ZX Spectrum в proteus

Старый спектрумистский форум

Moderator: Shaos

User avatar
Shaos
Admin
Posts: 24080
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: ZX Spectrum в proteus

Post by Shaos »

kiberlog wrote:Возможно ли, создать такой проект используя easyeda.com ?

Для примера
https://easyeda.com/aj22r/Z80-3e131a2eb ... cb03845e65
https://easyeda.com/jeroen1328/ZX_Spect ... 043bf8a6dc
а изиеда умеет симулировать схему?
Я тут за главного - если что шлите мыло на me собака shaos точка net
rdacomp
Junior
Posts: 1
Joined: 09 Sep 2018 14:10

Re: ZX Spectrum в proteus

Post by rdacomp »

Отпишись создатель. Есть желание и опыт продолжить тему. И довести её до RealTime в Цвете. Нужны исходники.
0iStalker
Junior
Posts: 8
Joined: 24 Mar 2018 04:11

Re: ZX Spectrum в proteus

Post by 0iStalker »

Не нашёл способов симулировать Verilog в Proteus'е, поэтому взялся за С++ и реализовал большую часть предыдущей схемы внутри DLL-компоненты. К моему удивлению, производительность не особо сильно повысилась, всего в 1.5 - 2 раза, а нужно на порядок - два, чтобы реальное время получить :(... Знатно я с ним настрадался, два или три раза переписывал с нуля. В этот раз ещё клавиатуру приделал.

Скриншоты -

Image
Image
Image

Архив с проектом -
You do not have the required permissions to view the files attached to this post.
aav8
Maniac
Posts: 287
Joined: 05 Nov 2008 19:47
Location: 81.28.208.238

Re: ZX Spectrum в proteus

Post by aav8 »

0iStalker wrote:Не нашёл способов симулировать Verilog в Proteus'е, поэтому взялся за С++ и реализовал большую часть предыдущей схемы внутри DLL-компоненты. К моему удивлению, производительность не особо сильно повысилась, всего в 1.5 - 2 раза, а нужно на порядок - два, чтобы реальное время получить :(...
Что-бы ускорилось на порядок-два и получился реалтайм+ нужно все (РАМ РОМ СПУ ... и связи между ними) запихать в эту DLL. Но такое уже сделано.
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Re: ZX Spectrum в proteus

Post by Lavr »

aav8 wrote:Что-бы ускорилось на порядок-два и получился реалтайм+ нужно все (РАМ РОМ СПУ ... и связи между ними) запихать в эту DLL. Но такое уже сделано.
Но нужен ли тогда "Proteus" с тормозной эмуляцией RGB-дисплея? :lol:

Собственно, "Proteus" в этой ситуации позволяет "собрать ZX-Spectrum", не собирая реально ZX-Spectrum... :wink:
Ну и получить от этого какое-то удовольствие, что - заработало! :o
:wink:
iLavr
0iStalker
Junior
Posts: 8
Joined: 24 Mar 2018 04:11

Re: ZX Spectrum в proteus

Post by 0iStalker »

Продолжаю виртуальное спектрумостроение, - доработал до 128k. От SpeccyBob Lite В итоге, вообще ничего не осталось. Тесты проходят, барсики фунциклируют

Картинки, -

Image
Image
Image
Image
Image
Image
Image

Файлы, -
You do not have the required permissions to view the files attached to this post.
Олег
Writer
Posts: 19
Joined: 16 Apr 2019 05:36

Re: ZX Spectrum в proteus

Post by Олег »

Пожалуйста, объясните мне как правильно настроить протеус чтобы в нём работал модель дисплея и вообще он не вылетал при запуске. Нужно протестить схему спека а ни фига не работает. Версия протеуса 8.8
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: ZX Spectrum в proteus

Post by PVV »

Олег wrote:Пожалуйста, объясните мне как правильно настроить протеус чтобы в нём работал модель дисплея и вообще он не вылетал при запуске.
Сложно дать однозначный ответ, вариантов много. Протеус программа платная, всевозможные 'лекарства' часто приводят к глюкам и слетам... я работаю в версии 8.5.
Каких то специальных и особых настроек протеус не требует для запуска примеров, которые есть здесь на сайте.
Часто слеты бывают из-за отсутствия прошивки ПЗУ по путям поиска. Никто не отменяет ошибок в 'наших самодельных' dll. С дисплеем эта проблема (вылеты протеуса) была очень актуальна некоторое время назад, но с dll в этой теме такой проблемы нет.
Можно начать с исключения симуляции разных схемных элементов, ПЗУ, ОЗУ, ЦП, SD, дисплей, и тп - в свойствах элемента ставить галочку 'исключить из симуляции', и проверять работу протеуса на предмет не вылета, найти приводящий к вылету элемент, а дальше обдумать, что с этим делать. Взять примеры по проще, проверить стабильность работы протеуса на них, далее, переходить на более сложные.
Олег
Writer
Posts: 19
Joined: 16 Apr 2019 05:36

Re: ZX Spectrum в proteus

Post by Олег »

Попробую. А как подключить прошивку от спектрума к виртуальным микросхемам пзу. Может вылетант из-за этого. Примеры брал из этой темы. Ну там архив boblite и ленинград 48К э. Да, почемуто в этих проектах похерены все соединения на схеме. Может ли быть это вылетом либоэзеленые точки и синие стрелки на схеме как-то хитро соединяют компоненты и их не надо снова соединять по схеме
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: ZX Spectrum в proteus

Post by PVV »

Олег wrote: А как подключить прошивку от спектрума к виртуальным микросхемам пзу.
в свойствах элемента есть поле для выбора бинарного файла прошивки
Олег wrote: Да, почемуто в этих проектах похерены все соединения на схеме. Может ли быть это вылетом либоэзеленые точки и синие стрелки на схеме как-то хитро соединяют компоненты и их не надо снова соединять по схеме
Задаваемый вопрос наводит на мысль, что надо бы изучить основы работы с протеусом, да и в целом, с правилами рисования электронных схем...
Одноименно подписанные линии схемы соединяются между собой.
Олег
Writer
Posts: 19
Joined: 16 Apr 2019 05:36

Re: ZX Spectrum в proteus

Post by Олег »

Да я раньше пользовался multisim'ом так там понятнее, но таких эмуляций спека не сделать наверное
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Re: ZX Spectrum в proteus

Post by Lavr »

Олег wrote:но таких эмуляций спека не сделать наверное
"таких"-то как раз можно, если уметь написать DLL с целым Спектрумом для multisim.

Кстати, меня удивляет одна вещь: если уж цель - добиться быстродействия "Спектрума",
и если уже всё свёрнуто в DLL-библиотеку, то зачем делать RGB-видео, а затем его же
разворачивать через DLL-библиотеку дисплея? :o

Когда мне хотелось быструю эмуляцию "Специалиста" - я сделал кусок видеопамяти сразу
с отображением на дисплей:
Image
Это выглядит как LCD - ну просто в таких цветах нарисовано. :lol:
А так - если рисовать в цвете, то и получится "Спектрум"...
iLavr
0iStalker
Junior
Posts: 8
Joined: 24 Mar 2018 04:11

Re: ZX Spectrum в proteus

Post by 0iStalker »

В случае Proteus и дисплейной DLL, на самом деле, не так уж и тормозит оно. Основные затраты процессорного времени в cpldbob, получились при обновлении состояний сигналов по маршруту DLL->симулятор Proteus. Даже кэширование и обновление только при изменении не сильно спасло ситуацию. Ну, конечно, запрограммировать весь спектрум внутри DLL проблем особых нет, только цель была не в этом, а получить временные диаграммы для написания verilog прошивки (и дальнейшей симуляции в Icarus'е)
User avatar
Deus0451
Junior
Posts: 4
Joined: 12 Jun 2019 06:12
Location: Одесса

Re: ZX Spectrum в proteus

Post by Deus0451 »

А есть ли в протеусе действующие модели других процессоров (или в других системах проектирования)?
Из тех действующих моделей, что я в нем нашел - MCS-51 (мк), MCS-48 (мк), 8086, немного переферии для 8080 (8255a и т.д.). Знаю, что есть модель 8088 для него (на ютубе есть видео), но я ее не нашел в интернете. Мне бы m68k промоделировать, может у кого-то есть модель?
IDDQD
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: ZX Spectrum в proteus

Post by PVV »

Deus0451 wrote:А есть ли в протеусе действующие модели других процессоров (или в других системах проектирования)?
Из тех действующих моделей, что я в нем нашел - MCS-51 (мк), MCS-48 (мк), 8086, немного переферии для 8080 (8255a и т.д.). Знаю, что есть модель 8088 для него (на ютубе есть видео), но я ее не нашел в интернете. Мне бы m68k промоделировать, может у кого-то есть модель?
модель 8086 из Протеуса очень сырая, я с ней работать пытался в проекте РК-86 на 8086, но не смог. Есть желание написать ее самому, ну и 8088 за компанию. 8255 из Протеуса, так же, сырая, я работаю с самописной моделью, ее исходники на этом форуме есть. Равно как еще несколько периферийных БИС комплекта 8080 есть самописных с исходниками здесь же. Модели ПИКов в Протеусе пробовал 16f628 и 12f675, работают. Более ничего не встречал. Что такое m68k не знаю, от слова совсем, но если есть время и желание, то можно разбираться и писать самому, быстро не получится, зато можно во многих нюансах разобраться от и до.