После появления модели z80 в протеусе у меня прям 'руки чесались' собрать какой нибудь Спектрум
ZX Spectrum в proteus
Moderator: Shaos
-
PVV
- Doomed
- Posts: 463
- Joined: 12 Feb 2016 13:39
ZX Spectrum в proteus
Приветствую всех!
После появления модели z80 в протеусе у меня прям 'руки чесались' собрать какой нибудь Спектрум
. Первое, что останавливало - отсутствие dram в протеусе для полного повторения, но поискав наличие схем со статической памятью я нашел проект harlequin, повторил его, практически, один в один (RSтригеры заменил на D во включении RS, тк RS в протеусе не моделируется) и схема завелась сразу же! Поигрался немного со схемой мультиплексирования адреса, но сути это не изменило.
однако в этой схеме cpu тормозится не по ножке wait, а по тактовой частоте. Мне же интересно было проверить, как же работает наш z80 с торможением по wait, и я не сильно теперь раздумывая решил собрать 'классический'
Leningrad 1, реализовав имитацию dram памяти на sram, как уже это делал на других проектах ранее. Сделал схему, запускаю, а она не идет... проверяю, ошибок нет, в чем же дело? Смотрю на графики, времянки cpu не попадают куда им положенно, начал экспериментировать методом 'тыка'... изменил точку подключения U2:B-11 c TI на /TI , все времянки сошлись и схема завелась. Почему так я не понимаю. Быть такого не должно, где-то я ошибаюсь... Тем не менее, решил продолжить эксперимент. Неоднократно встречал информацию, что первый ленинград можно запустить вообще без wait и переделки минимальные, пробую...
После появления модели z80 в протеусе у меня прям 'руки чесались' собрать какой нибудь Спектрум
You do not have the required permissions to view the files attached to this post.
-
PVV
- Doomed
- Posts: 463
- Joined: 12 Feb 2016 13:39
Re: ZX Spectrum в proteus
Все работает, даже 'фирменный глюк ленинграда' присутствует (с) - не полный круг 
Переделал развертку и дешифратор по схеме Leningrad 2 - все ОК... почему же первая схема так сильно не попадает во времянки так и осталось для меня загадкой
.
во вложении все мои эксперименты.
Переделал развертку и дешифратор по схеме Leningrad 2 - все ОК... почему же первая схема так сильно не попадает во времянки так и осталось для меня загадкой
во вложении все мои эксперименты.
You do not have the required permissions to view the files attached to this post.
-
Lavr
- Supreme God
- Posts: 16780
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: ZX Spectrum в proteus
Ну запустили бы какую-нибуть красивую демку на экранчик что ли...
А то ZX Spectrum, а такой экранчик скучный!
А то ZX Spectrum, а такой экранчик скучный!
iLavr
-
IgorR76
- Senior
- Posts: 102
- Joined: 27 Jul 2015 15:20
Re: ZX Spectrum в proteus
Дык дисплей пока чб... Надо его цветным сделать.
-
Lavr
- Supreme God
- Posts: 16780
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: ZX Spectrum в proteus
Да у Спецтрума и ч.б. демки есть нескучные!
А то столько труда чтобы увидеть мигающий курсор?
А то столько труда чтобы увидеть мигающий курсор?
iLavr
-
IgorR76
- Senior
- Posts: 102
- Joined: 27 Jul 2015 15:20
Re: ZX Spectrum в proteus
А кстати, как загружать программу? dll - кассетный магнитофон написать?
И ждать часа три, пока загрузится.
Наверно, модуль ПЗУ поможет. Или в sram можно загружать данные из файлов?
Наверно, модуль ПЗУ поможет. Или в sram можно загружать данные из файлов?
-
Lavr
- Supreme God
- Posts: 16780
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: ZX Spectrum в proteus
Если скорость эмуляции позволяет - можно напрямую через порт.IgorR76 wrote:А кстати, как загружать программу?
IgorR76 wrote: dll - кассетный магнитофон написать?
Полезно бы - чтобы грузить всякие стандартные sna и tap...
Из файлов в sram я не смог, может в современных Протезусах есть...IgorR76 wrote:Наверно, модуль ПЗУ поможет. Или в sram можно загружать данные из файлов?
А из ПЗУ - да, самый быстрый и безпроблемный способ - я в EDUC-8 так делал вместо загрузки с перфоленты...
iLavr
-
PVV
- Doomed
- Posts: 463
- Joined: 12 Feb 2016 13:39
Re: ZX Spectrum в proteus
Эмулируется все ооочень медленно. Эти 1.7с до появления надписи ~10 минут реального времени. Смысл всех этих экспериментов в проверке работоспособности dll в разных схемах, с использованием разных воздействий на ножки z80. Можно поизучать диаграммы сигналов друг относительно друга... некий многоканальный логический анализатор
Загружать программы в ОЗУ я способ не нашел в протеусе. Была мысль написать dll мс ОЗУ, хоть статики SRAM , а то и динамики DRAM, как раз ее нет(можно по таймеру при отсутствии регенерации память обнулять...), и уже в этой dll сделать загрузку программы...
Загружать программы в ОЗУ я способ не нашел в протеусе. Была мысль написать dll мс ОЗУ, хоть статики SRAM , а то и динамики DRAM, как раз ее нет(можно по таймеру при отсутствии регенерации память обнулять...), и уже в этой dll сделать загрузку программы...
-
aav8
- Maniac
- Posts: 287
- Joined: 05 Nov 2008 19:47
- Location: 81.28.208.238
Re: ZX Spectrum в proteus
Насчет скорости - ест-но медленно.
Proteus-у нужно просчитать все сигналы (R/W, I/O) всякие памяти,
логика ... и.т.д. и т.п.
Которые микроконтроллеры все это присчитывают внутри.
Когда приделывал к модели окно состояния, к коду операции думал пристроить
фактические аргументы. СТОП! - это-ж дополнительные опреции чтения/записи по
шине. А вдруг там что-то еще (на шине) чего-й то навешано (???).
Это здорово, что модель заработала практически в реальном spectrum.
dll для магнитофона - действительно врамя выразится в несколько часов.
Но некоторые игрушки загружают сначала свой загручик...
С интересными счетчиками/кртинками. Вот для них и нужна эта dll.
Но все равно я думаю такая dll нужна... (для чего ?), но что-бы она могла
эмулировать форматs spctrum, rk, орион... и еще-бы сигналы управления
магнитофоном как в Ирише-е, Партнер, может еще где...
И... dll для связи с какм-либо эмулятором... (spectrum... или/и еще чего).
Можно будет в proteus разрабытывать/добавлять модули в реальный комп.
*********************
критика/возражения/добавления принимаются и приветствуются.
*********************
PS:
Наверное надо сосздать отдельную тему конкретно по модели
Proteus-у нужно просчитать все сигналы (R/W, I/O) всякие памяти,
логика ... и.т.д. и т.п.
Которые микроконтроллеры все это присчитывают внутри.
Когда приделывал к модели окно состояния, к коду операции думал пристроить
фактические аргументы. СТОП! - это-ж дополнительные опреции чтения/записи по
шине. А вдруг там что-то еще (на шине) чего-й то навешано (???).
Это здорово, что модель заработала практически в реальном spectrum.
dll для магнитофона - действительно врамя выразится в несколько часов.
Но некоторые игрушки загружают сначала свой загручик...
С интересными счетчиками/кртинками. Вот для них и нужна эта dll.
Но все равно я думаю такая dll нужна... (для чего ?), но что-бы она могла
эмулировать форматs spctrum, rk, орион... и еще-бы сигналы управления
магнитофоном как в Ирише-е, Партнер, может еще где...
И... dll для связи с какм-либо эмулятором... (spectrum... или/и еще чего).
Можно будет в proteus разрабытывать/добавлять модули в реальный комп.
*********************
критика/возражения/добавления принимаются и приветствуются.
*********************
PS:
Наверное надо сосздать отдельную тему конкретно по модели
-
Lavr
- Supreme God
- Posts: 16780
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: ZX Spectrum в proteus
Да я вобще в восторге, как у нас начали работать под Протеус схемы с i8080 и z80!aav8 wrote:Это здорово, что модель заработала практически в реальном spectrum.
Огромное спасибо PVV, что он нашел в себе силы и время эту процессорную dll продвинуть!
iLavr
-
vernigor
- Junior
- Posts: 1
- Joined: 02 May 2015 12:30
Re: ZX Spectrum в proteus
А от чего у меня может не работать дисплей? В целом - все симулируется, но экрана дисплея нет.
-
0iStalker
- Junior
- Posts: 8
- Joined: 24 Mar 2018 04:11
Re: ZX Spectrum в proteus
Добрый день, друзья спектрумисты. Тоже вот, в процессе осознания как всё это железо работает - нарисовал в Протеус'е по схеме клона SpeccyBob Lite. Очень помогла эта тема, в плане освоение возможностей Proteus и архивы с готовыми проектами. Также принял во внимание доработки схемы Prusak c сайта zxbyte.ru и по идеям с zx.pk.ru добавил в схему безWAITовость. А с WAIT'ом оно у меня так и не заработало. Также смущает один момент с работой со статической памятью, по даташиту на 62256 запись данных происходит по снятию сигналов /CE /WE, смотря по тому, что позднее, а в оригинальной схеме SpeccyBob адрес чтения видеоадаптера выставляется одновременно со снятием /WE и установкой /CE /OE, из-за чего оно жёстко глючит и крайне чувствительно к таймингам микросхемы ОЗУ, добавленная задержка через 2AND вроде бы решила проблему (всё корректно работает со скоростью доступа от 10 до 100нс)
И вишенка на торте, DLL c дисплеем я доработал до RGBI варианта, так что теперь можно симулировать в цвете (так же работа теперь стала намного стабильнее и оно не вылетает в течении 10 секунд нереального времени симуляции.











Архив с проектом вот тут PS.
По поводу вопроса выше, почему при запуске схемы не появляется экран, - проблема в том, что драйвера NVidia тоже содержат display.dll и Proteus загружает её, а не модуль дисплея из архивов выше (воркэраунд для этого случая, просто переименовать dll и передобавить модуль в Proteus c другим именем dll).
PPS.
Надеюсь, не накосячил с оформлением
И вишенка на торте, DLL c дисплеем я доработал до RGBI варианта, так что теперь можно симулировать в цвете (так же работа теперь стала намного стабильнее и оно не вылетает в течении 10 секунд нереального времени симуляции.
![]() |











Архив с проектом вот тут PS.
По поводу вопроса выше, почему при запуске схемы не появляется экран, - проблема в том, что драйвера NVidia тоже содержат display.dll и Proteus загружает её, а не модуль дисплея из архивов выше (воркэраунд для этого случая, просто переименовать dll и передобавить модуль в Proteus c другим именем dll).
PPS.
Надеюсь, не накосячил с оформлением
You do not have the required permissions to view the files attached to this post.
Last edited by 0iStalker on 24 Mar 2018 11:21, edited 1 time in total.
-
0iStalker
- Junior
- Posts: 8
- Joined: 24 Mar 2018 04:11
Re: ZX Spectrum в proteus
Странно, вроде когда оформлял ссылки - сервис гугла по их укорачиванию их подгружал с яндекс диска. Попробую, ещё куда-нибудь залить
-
PVV
- Doomed
- Posts: 463
- Joined: 12 Feb 2016 13:39
Re: ZX Spectrum в proteus
Ляпота!
Все картинки видно, и проект работает, надо только клавиатуру добавить.
Я уже пару раз порывался сделать RGB, но быстро не поручалось (при добавлении новых цветов dll вылетала почти сразу после запуска
) и забрасывал это дело.
Я уже пару раз порывался сделать RGB, но быстро не поручалось (при добавлении новых цветов dll вылетала почти сразу после запуска
-
kiberlog
- Junior
- Posts: 1
- Joined: 04 Apr 2018 01:58
Re: ZX Spectrum в proteus
Возможно ли, создать такой проект используя easyeda.com ?
Для примера
https://easyeda.com/aj22r/Z80-3e131a2eb ... cb03845e65
https://easyeda.com/jeroen1328/ZX_Spect ... 043bf8a6dc
Для примера
https://easyeda.com/aj22r/Z80-3e131a2eb ... cb03845e65
https://easyeda.com/jeroen1328/ZX_Spect ... 043bf8a6dc

