nedoPC.org

Community for electronics hobbyists, established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 10 Dec 2024 14:04



Reply to topic  [ 28 posts ]  Go to page 1, 2  Next
Самописные dll для Proteus 
Author Message
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
В связи с тем, что на данный момент набралось достаточно много самописных dll моделей для Протеуса и возникают сложности с поиском их актуальных версий, возникло желание сделать тему, в которой хочется собрать все наработки, как свои, так и чужие. Так же, в этой теме будет приветствоваться описание найденных ошибок в той или иной dll. С появлением обновлений dll, я буду стараться актуализировать сообщения.
Во вложениях, рядом с dll, при наличии исходник, проект самого Протеуса с этим элементом, и этот проект в pdf формате, именно для того, что бы можно было нарисовать УГО(рисуной элемента на схеме) самостоятельно. Тк проекты новых версий Протеуса в старых версиях не открываются, то можно УГО элемента нарисовать в своей версии, и подключить к нему нужную dll, тк для dll версия Протеуса не важна. При рисовании УГО важно четко следить за именами ножек, тк они используются в dll. Если же проект Протеуса удается открыть, то УГО элемента можно просто скопировать в свою схему. Библиотеки, в которых можно сохранить УГО, я не выкладываю.

использование dll можно посмотреть:
viewtopic.php?f=89&t=11716
viewtopic.php?f=90&t=11446
viewtopic.php?f=93&t=16296
viewtopic.php?f=96&t=18820
viewtopic.php?f=35&t=16064
https://zx-pk.ru/threads/19180-partner- ... ost1010326

x80.dll - актуальная версия 13, (обновил 28.12.2021 до 13b5) поддерживаются три типа ЦП, i8080,i8085 и z80. Выбор типа ЦП производится в текстовом поле свойств схемного УГО. Точность эмуляции достаточно высокая, и на данный момент нет схем, в которых бы данная модель работала не корректно, все найденные ошибки устранены.
Есть лишь два ограничения. Для всех, трех, моделей не учитывается время распространения сигналов по отношению к тактовой частоте, те по перепаду CLK выходные ножки отрабатывают без задержки, мгновенно. Это в большинстве случаев не мешает симуляции, но при необходимости, можно добавить один\два не\инвертирующих логических элемента по входу CLK, для введения такой задержки. Второе ограничение относится только к i8080, модель использует только тактовый сигнал F1, сигнал F2 игнорируется. Соответственно, времянки выходных ножек, которые привязаны к F2 не соответствуют, тк они перепривязаны к F1. Это ограничение не помешало еще ни одной симуляции схем. Исходник не распространяется.


display.dll - версий было несколько, номер актуальной версии не известен. Монохромный вариант виртуального монитора. В ранних версиях при использовании был глюк с вылетом Протеуса без каких либо предупреждений. Есть исходник.

dispRGB.dll - актуальная версия ?. Цветной вариант виртуального монитора. Во всех последних проектах я использую именно эту dll, для не цветных симуляций просто соединяются вместе входы R,G,B,I. Работает очень стабильно. dll не моя, исходника нет.

displayRGB.dll - актуальная версия 1. Мой цветной вариант виртуального монитора, делался для VGA разрешения экрана. Есть исходник.

i8255.dll - актуальная версия 2, поддерживает режим только mode0. Работает более корректно аналогичной dll в самом Протеус. Есть исходник.

i8257.dll - актуальная версия 2, поддерживает режим только второго канала DMA. Сделана для использования в симуляции РК-86 и его клонов. Есть исходник.
(обновил 28.12.2021 до версии 3, сделана поддержка всех четырех каналов, нет только ротации приоритета)

i8275.dll - актуальная версия 2, поддерживает многие, но не все функции. Мигание курсора сделано существенно быстрее, для наглядности симуляции. Сделана для использования в симуляции РК-86 и его клонов. Есть исходник.
(обновил 28.12.2021 до версии 3, исправлена ошибка в паузе между запросами ДМА)

v9938.dll - актуальная версия 6, поддерживает только базовые функции. Сделана для использования в симуляции msx. Есть исходник.

RP5C01.dll - актуальная версия 1, поддерживает основные функции. Запоминания настроек нет, секунды инкрементируются существенно быстрее. Сделана для использования в симуляции msx. Есть исходник.

K555IR26.dll - актуальная версия 1, поддерживает все функции. Сделана для использования в симуляции msx. Есть исходник.

i8224.dll - актуальная версия ? Есть ошибка в отработке сигнала READY. dll не моя, исходника нет.

km48c64.dll - актуальная версия 1. Некая виртуальная DRAM, пока в отладке.
(обновил 28.12.2021)

x86.dll - актуальная версия 3a. Реализация i8088 и i8086. Единственное несоответствие, опкоды выполняются гораздо быстрее, чем у реальных ЦП, но для платформы x86 это, на мой взгляд, не важно, а для эмуляции даже удобнее, меньше ждать. Времянки шины же полностью соответствуют реалу.


Last edited by PVV on 28 Dec 2021 02:03, edited 5 times in total.



29 Nov 2019 02:38
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
x80.dll


Attachments:
File comment: актуализация версии dll, 13b5, исправлена кучка мелких багов во всех трех типах ЦП
x80_13b5.zip [45.88 KiB]
Downloaded 648 times
x80_PROP.PNG
x80_PROP.PNG [ 85.46 KiB | Viewed 27815 times ]
x80_dll.zip [45.64 KiB]
Downloaded 784 times


Last edited by PVV on 27 Dec 2021 14:01, edited 2 times in total.

29 Nov 2019 02:40
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
display.dll


Attachments:
display.png
display.png [ 10.01 KiB | Viewed 27770 times ]
display_cpp.zip [10.92 KiB]
Downloaded 653 times
display_dll.zip [24.26 KiB]
Downloaded 690 times


Last edited by PVV on 03 Dec 2019 02:21, edited 2 times in total.

29 Nov 2019 02:41
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
dispRGB.dll


Attachments:
dispRGB.png
dispRGB.png [ 6.58 KiB | Viewed 27770 times ]
dispRGB_dll.zip [104.38 KiB]
Downloaded 974 times


Last edited by PVV on 03 Dec 2019 02:21, edited 1 time in total.

29 Nov 2019 02:42
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
displayRGB.dll


Attachments:
displayRGB.png
displayRGB.png [ 5.59 KiB | Viewed 27770 times ]
displayRGB.zip [111.77 KiB]
Downloaded 683 times
displayRGB_dll.zip [24.86 KiB]
Downloaded 691 times


Last edited by PVV on 03 Dec 2019 02:21, edited 1 time in total.

29 Nov 2019 02:42
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
i8255.dll


Attachments:
i8255.png
i8255.png [ 33.02 KiB | Viewed 27770 times ]
i8255_src_v2.zip [12.95 KiB]
Downloaded 649 times
i8255_dll.zip [24.93 KiB]
Downloaded 694 times


Last edited by PVV on 03 Dec 2019 02:22, edited 1 time in total.

29 Nov 2019 02:43
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
i8257.dll


Attachments:
File comment: актуальная dll, v3, и исходники
i8257_cpp_dll_v3.zip [32.54 KiB]
Downloaded 356 times
i8257.png
i8257.png [ 42.11 KiB | Viewed 27770 times ]
i8257_dll.zip [25.13 KiB]
Downloaded 620 times


Last edited by PVV on 27 Dec 2021 14:05, edited 2 times in total.

29 Nov 2019 02:44
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
i8275.dll


Attachments:
File comment: актуальная версия dll, v3, и исходники
i8275_cpp_dll_v3.zip [38.17 KiB]
Downloaded 371 times
i8275й.png
i8275й.png [ 29.02 KiB | Viewed 27770 times ]
i8275_dll.zip [25.83 KiB]
Downloaded 625 times


Last edited by PVV on 27 Dec 2021 14:07, edited 2 times in total.

29 Nov 2019 02:45
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
v9938.dll


Attachments:
v9938.png
v9938.png [ 34.95 KiB | Viewed 27770 times ]
v9938.zip [282.01 KiB]
Downloaded 590 times
v9938v6_dll.zip [27.01 KiB]
Downloaded 601 times


Last edited by PVV on 03 Dec 2019 02:25, edited 2 times in total.

29 Nov 2019 02:46
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
RP5C01.dll


Attachments:
RP5C01.png
RP5C01.png [ 18.25 KiB | Viewed 27770 times ]
RP5C01A_cpp.zip [1.96 KiB]
Downloaded 578 times
RP5C01A_dll.zip [24.16 KiB]
Downloaded 617 times


Last edited by PVV on 03 Dec 2019 02:25, edited 1 time in total.

29 Nov 2019 02:47
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
K555IR26.dll


Attachments:
555IR26.png
555IR26.png [ 13.42 KiB | Viewed 27770 times ]
K555IR26_dll.zip [23.96 KiB]
Downloaded 615 times


Last edited by PVV on 03 Dec 2019 02:25, edited 1 time in total.

29 Nov 2019 02:48
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
i8224.dll


Attachments:
i8224.png
i8224.png [ 13.93 KiB | Viewed 27770 times ]
i8224_dll.zip [4.51 KiB]
Downloaded 591 times


Last edited by PVV on 03 Dec 2019 02:26, edited 2 times in total.

29 Nov 2019 02:48
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
km48c64.dll


Attachments:
File comment: актуальная версия dll, v1
km48c64_v1.zip [159.16 KiB]
Downloaded 367 times
48c64.PNG
48c64.PNG [ 9.7 KiB | Viewed 27738 times ]


Last edited by PVV on 27 Dec 2021 14:12, edited 1 time in total.

29 Nov 2019 02:49
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
PVV wrote:
x80.dll - актуальная версия 13, поддерживаются три типа ЦП, i8080,i8085 и z80. Точность эмуляции достаточно высокая, и на данный момент нет схем, в которых бы данная модель работала не корректно, все найденные ошибки устранены.

Что-то у меня нехорошее и обоснованное подозрение - немаскируемое прерывание NMI обрабатывается
в модели неправильно.
NMI должно сработать один раз по перепаду "1"->"0" (по срезу) и, перейдя на адрес 0066H, на уровень лог."0"
на входе NMI модель реагировать больше не должна!
А получается, что в подпрограмме обработки NMI модель отрабатывает его по уровню лог."0" на входе NMI снова и снова.

С конкретным проектом - посмотрите этот: http://www.nedopc.org/forum/viewtopic.php?p=160961#p160961.
Если нажать NMI - вся память заполняется адресом возврата 0066H.

_________________
iLavr


16 Jul 2021 12:04
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Уже весьма давно наш коллега Pavtik написал модель для Proteus микроконтроллеров семейства mcs48.
Спасибо ему за это! :kruto:

Правда, проект был под старшие версии программы Proteus, и я им в то время не воспользовался...

Но неожиданно семейство mcs48 меня самого заинтересовало, поэтому я немного причесал графические
модели от Pavtik-а и добавил к ним библиотечные файлы, чтобы модели появились в меню компонент Proteus.

Ну и мне первым делом очень хотелось запустить "HELO" на СВЧ-печке "Электроника" от Tronix-а. :lol:
Ему - тоже спасибо за образец "HELO" и за ассемблер asm48 - он есть в архиве, выложенном ниже.
Attachment:
Hello.PNG
Hello.PNG [ 41.67 KiB | Viewed 21625 times ]
..........................Image

В архиве, что выложен ниже, все файлы разложены по папкам, куда их следует разложить там,
где у вас лежит папка \Labcenter Electronics. (У меня - здесь: C:\Program Files\Labcenter Electronics)
Attachment:
Proteus_8048.zip [133.55 KiB]
Downloaded 453 times

_________________
iLavr


22 Nov 2021 17:36
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 28 posts ]  Go to page 1, 2  Next

Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.