И в чем преимущество над сбросом по INTE как в векторе? Или речь уже про z80?
И в чем преимущество над сбросом по INTE как в векторе? Или речь уже про z80?
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Нет, идет речь про ВМ80 на отдельной платке, которая вставляется вместо штатного ВМ80. Идет пока обсуждение, естественно приветствуются все предложения. Про сброс по INTE я не в курсе.
P.S. Подумалось, ведь INTE вроде зависит от команд DI и EI. То есть программист должен в подпрограмме обслуживания прерывания обязательно поставить DI, чтобы сбросить. Но это для правильных программистов![]()
Аппаратный сброс по счетчику гарантирует сброс прерывания допустим спустя 32 такта и от программиста не зависит - в этом мне кажется есть большой плюс.
Последний раз редактировалось Mick; 10.08.2025 в 17:54.
Последний раз редактировалось ivagor; 10.08.2025 в 18:39. Причина: исправил номер такта
INTE (interrupt enabled) — выход, отражающий готовность процессора принять прерывание. Команды EI и DI, разрешающие и запрещающие прерывания, устанавливают соответственно высокий и низкий уровень на этом выводе. Низкий уровень устанавливается на этом выводе также после приёма запроса на прерывание.
На INTE я не уделял своего внимания, я смотрел вход INT и как там его начинает проц обрабатывать - SYNC, DBIN
Пока нацарапал эскиз переходной платки для обсуждения. Наверняка где то напутал. AY я подцептил к портам 14h и 15h как делал в ПК8000 и вроде такие порты в Векторе - https://disk.yandex.ru/i/7jM5yl7QQYMzGw
Пара моментов замеченных при поверхностном просмотре:
1. Нет источника сигнала RD/ (инвертированный DBIN?)
2. Нет подтяжки D0-D7 к 5В. В самом специалисте ее вроде тоже нет, хотя вариантов много, тут я не знаю.
Если правильно понял OUT и IN перестанут обращаться к памяти, это стоит отметить.
Mick(11.08.2025)
возвращаемся к теме "все что не чтение - то запись". с такой схемой вместо DBIN будет MEMRD - который в подтверждении прерывания выдан не будет, на что журнальная схема изобразит цикл записи и загадит память.
p.s. и кстати - не проще будет вместо набора логики просто ВК28 поставить? и места займет меньше, и умеет все что надо (и шину отключает когда надо и RST7 умеет выдавать штатно.)
хотя жрать будет больше, да.
Последний раз редактировалось Serg6845; 11.08.2025 в 08:30.
Зверинецъ
Специалист (был когда-то "совсем стандарт") - 1988-2023
Ленинград1 +256К +AY+BDI+VGA выход +Ethernet (Speccyboot) +Xmodem (115200)+divmmc
Ленинград2 + CF карта
Платформа 8085+Z80+CPLD (Специалист МХ2 +SD +FDD +PS/2kbd)
БК0010-01 стоковый[свернуть]
Mick(11.08.2025)
Забыл конечно. Схему обновил.
Да, тут необходимо пояснить, что порты выведены из обращения к памяти. Поэтому программы, которые обращаются к портам (халявят) работать не будут.
AY предлагается нацепить на порты. В данном случае это 14h и 15h
Кроме того, с материнской платы (платы Специалиста) необходимо взять три провода.
Сигналы:
F1TTL - берется с выв. 12 микросхемы DD13(ИД4);
H6 - берется с выв. 6 микросхемы DD2(ИЕ7);
KSI/ - берется с выв. 8 микросхемы DD10(ЛА2)
Безусловно, если сбрасывать триггер прерывания по INTA или INTE, то нужно с платы будет взять только два сигнала. Но я бы все таки остановился на таком варианте, не зависящем от процессора, но как говорится не настаиваю.
Кстати, поглядел схему ПК8000, то там тоже на рассыпухе собран анализатор слова состояния процессора и прерывания от кадровой развертки сбрасываются по INTA.
Так что смотрим, вносим свои предложения.
- - - Добавлено - - -
Вполне возможен и такой вариант, никто не мешает изобразить два варианта.
- - - Добавлено - - -
В таком случае, мне видится выход из ситуации такой. В момент прерывания блокировать SYNC на выходной колодке процессора. То есть на триггер защелки записи в момент прерывания не придет SYNC.
Но в этом случае лучше будет тогда сбрасывать триггеры сигналом INTA.
Что касается портов вместо памяти, то с точки зрения программирования даже проще, хотя уже идёт вразрез с тем, что сделано. В конце концов можно будет автодетектилку сделать, я думаю. Но вот использование IN/OUT, конечно поставит крест на использование SP580 и софта он них же. Но с другой стороны мы же в соседней ветке проектируем новый супер-пупер клон, куда так или иначе решили закладывать возможность полноценно работать с портами.
А почему портов только два? Я так понимаю, что остались PORT_SEL и PORT_WR, а под нож пошёл PORT_RD? Прошу оставить и его тоже! У меня через него визуализация мелодии работает. Опять же если подключать принтере через AY он понадобится.
Что касается прерываний, то ты, пожалуйста, синхронизируйся с @Pyk и @RW9UAO, которые воплотили прерывания на Специалисте в эмуляторе и FPGA. Нужно чтобы они были одинаковые везде, включая поведение, время прихода, длительность и т.д. Это очень важный момент для будущего софта! Есть отдельная ветка. Может прерывания лучше продолжить там обсудить, чтобы было всё в одном месте?
С уважением, Станислав.
А что за PORT_RD такой. Вроде к AY обращались всегда по двум портам?
По данной схеме
Порт 14h - запись адреса регистра AY
Порт 15h - запись и чтение данных регистров AY
Никакой третий порт не нужен.
- - - Добавлено - - -
А что SP580 юзает халяву (порты).
И вроде тут обсуждается платка с AY для текущих Специалистов, а для будущего клона на Z80 как бы она не нужна.
Последний раз редактировалось Mick; 11.08.2025 в 11:35.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)