микропроцессора z80 не шевелится под моим замшелым Протезусом 6.7 и штопаной-перештопаной
Вендой-98...

Поэтому, как агностик по вероисповеданию, в последние дни православных Рождественских праздников
решил я эту ситуацию кардинально исправить - и исправил!

Заодно и поправил всякую неудобную мелочевку....
Так что архив с работающей везде моделью z80 можно скачать здесь: Z80ALL.rar
В архиве всё разложено в папки, из которых файлы следует переложить в одноименные папки, там
где у вас установлен Протеус.
После старта Протеуса микропроцессор(ы) z80 становятся доступны в меню элементов:

Увеличить
Красной рамкой обведены НАШИ z80 (у Протеуса есть и свои, но он их не поддерживает...)
По сути у нас теперь 2 бибиотеки с z80, в каждой из которых есть еще 8 свободных мест,
если захочется "оживить" весь комплект z80.
Библиотека x80MCS - поддерживает модель z80, работоспособную в Вендах, начиная с ХР, и для
неё может понадобиться файл MSVCR100D.DLL (я его приложил, проверенный на моей Венде 7).
Библиотека Z80Zilog - поддерживает модель z80, работоспособную в Венде 98, и, по идее -
во всех остальных Вендах тоже (но я этого не проверял). Этой модели файл MSVCR100D.DLL не нужен.
Есть в архиве - 3 примера, демонстрирующие корректную работу модели z80, и могущие стать
основой для собственных проектов.
Карта памяти во всех трех демо-проектах одинакова: внизу - 8 кБайт ПЗУ с тестовой программой,
в верхних адресах - 56 кБайт ОЗУ. В пространстве УВВ по адресам 0F8H...0FFH расположен
UART i8250A. (Я был удивлен неимоверно, но и в моём замшелом Протезусе 6.7 эта модель есть!)
Вот скриншот проекта 8080_2.DSN :

Увеличить
При запуске симуляции отрабатывается тест на верность исполнения набора инструкций
микропроцессора i8080 :
Code: Select all
;***********************************************************************
; MICROCOSM ASSOCIATES 8080/8085 CPU DIAGNOSTIC VERSION 1.0 (C) 1980
;***********************************************************************
; Load into virtual altair with: ALTAIR L=TEST.HEX
; Then press F2 to view screen, and 'G' to execute the test.
;
;DONATED TO THE "SIG/M" CP/M USER'S GROUP BY:
;KELLY SMITH, MICROCOSM ASSOCIATES
;3055 WACO AVENUE
;SIMI VALLEY, CALIFORNIA, 93065
;(805) 527-9321 (MODEM, CP/M-NET (TM))
;(805) 527-0518 (VERBAL)
;
"CPU IS OPERATIONAL" и
" CPU HAS FAILED! ERROR EXIT=$"
В нашем случае - результат, похоже, что положительный


Увеличить
Ну и из скриншота видно, почему моделей микропроцессора z80 в библиотеках по две:
я добавил каждой модели УГО, по стандарту IEC, что ближе к нашему ГОСТ и мне больше
нравится внешне. Инверсные выводы с кружкАми добавлять не стал, поскольку в среде
Протезуса они выглядят как "яйцо сбоку", а я люблю - кружок на периметре УГО...
Если что-то пойдет не так, Протезус может начать ругаться:
Reading netlist...
FATAL: [DD1] External model DLL "x80.DLL" not found.
(Get Last Error) GLE=0x00000002. = ERROR_FILE_NOT_FOUND
Это он не нашел x80.dll или Z80.dll - они должны быть в
его папке MODELS.
(Get Last Error) GLE=0x00000485. = ERROR_DLL_NOT_FOUND
Это он не нашел файл MSVCR100D.DLL или что-то еще сопутствующее.
(Get Last Error) GLE=0x0000001F. = ERROR_GEN_FAILURE
Это он все нашел, но случился по пути "Генерал Файлура"!

В общем - удачи всем в освоении модели, а то она теперь в Протезусе есть, а никто как бы
и не рад что-ли?

P.S. Огромное спасибо aav8 - ЗА ВСЁ !
