Компьютер на Z80 с передней панелью вроде IMSAI или Altair.

Микропроцессоры и микроконтроллеры от фирмы Zilog, а также компьютеры на них построенные

Moderator: Shaos

Andnor
Fanat
Posts: 80
Joined: 01 Jan 2023 11:37

Компьютер на Z80 с передней панелью вроде IMSAI или Altair.

Post by Andnor »

imsai8080.png
Я думаю над тем, как можно собрать такой компьютер. В основе будет лежать процессор Z80, а именно Z0840004PSC, в корпусе DIP, поскольку он продаётся до сих пор и стоит достаточно недорого.Так же в нём будет микросхема статической оперативной памяти, HM62256, к сожалению всего на 32 килобайта (хотелось бы 64, но да ладно). Кроме этого будут тумблеры, светодиоды, фанера или оргстекло для корпуса, а так же макетная печатная плата и кроватки для микросхем.

Для начала хотелось бы определиться с тем. какие комплектующие мне понадобятся, поскольку я бы хотел воспроизвести большую часть логики именно IMSAI, хотя и с небольшим дополнением, то есть полная реплика не планируется. Хотелось бы обойтись без микроконтроллеров, но использовать более современную элементную базу, если это позволит упростить конструкцию.

Хотелось бы сохранить такие фичи:
1. Во время работы процессора на полной скорости, тумблеры не мешают ему, но компьютер может посмотреть состояние верхних восьми тумблеров, обратившись к порту 0xFF командой IN.
2. Нижние восемь тумблеров могут записывать данные как в шину адреса, так и в шину данных в зависимости от того какой управляющий тумблер (без фиксации) был активирован.
3. Имеется возможность обратиться как по адресу на панели, так и по следующему за ним адресу ( Deposit next, Examine next).
4. При записи в порт 0xFF это меняет состояние верхних светодиодов, причём они сохраняют состояние до выключения компа или следующей записи. Почему-то у оригинала светодиоды показывали переданное значение в инверсии, то есть 0x00 - все светодиоды горят, 0xFF - все потушены, 0x7F - все горят кроме крайнего слева. Я бы сделал так как схемотехнически будет проще.

Так же хотелось бы добавить фичу аналогичную пункту 3, но с шагом назад, иначе если вспомнил про ошибку, придётся возвращаться к старому адресу, набивая его на тумблерах. Хотелось бы иметь возможность листать адреса и назад тоже, чего у оригинала не было.

Такому компьютеру не требуется ROM, поскольку произвольную программу можно набрать и отладить, а так же посмотреть результаты её исполнения, используя панель управления. Тем не менее хотелось бы оставить возможность добавить ещё кое-какие фичи:
  • ROM чип с часто используемыми программами.
  • Многоразрядный семисегментный индикатор, доступный через какой-нибудь порт или например по порту на каждый разряд с софтовой дешифрацией.
  • 4x4 клавитура
  • RS-232 или UART 5V для обмена данными с другими компьютерами, а так же для загрузки программ с внешних носителей.
Но это всё будет добавлено потом. В первой версии должны быть только оперативка, процессор, минимальная обвязка и передняя панель. Можете подсказать, какие чипы для этого подойдут лучше всего?
  • Я так понимаю, состояние шины адреса должно где-то хранится, если это не умеет сам остановленный процессор или память, понадобится сделать регистр адреса, причём умеющий делать инкремент и в идеале декремент.
  • Для программируемых светодиодов понадобится восьмибитный регистр, который помнит их значение.
  • Понадобится буфер для переключения нижних тумблеров между шиной данных и шиной адреса иъ верхних между портом 0xFF и шиной адреса
  • У буфера должно быть состояние высокого импеданса, чтобы не мешать обмену между процессором и памятью.
  • Понадобится какой-нибудь контроллер ввода-вывода, который можно подключить к компьютеру, дисководу, читалке перфоленты, магнитофону или ещё чему-то такому. В идеале какой-нибудь недорогой.
  • Понадобится кварцевый резонатор для процессора в режиме полной скорости. Я думаю, можно взять на 1 МГц для удобства подсчёта таймингов.
  • Понадобятся какие-нибудь микросхемы для debounce управляющих команд.
Прошу рекомендаций по подбору конкретных чипов с учётом минимизации числа корпусов. Ну и честно скажу, в железе я разбираюсь довольно слабо, схемы читаю с трудом, раньше паял устройства только по готовым платам, где нужно было просто вставить детали и приложить паяльник с припоем.

В эмуляторе IMSAI, который на скриншоте сверху, впрочем, у меня вполне неплохо получается работать - забивать программы в машинных кодах и запускать их. Хотелось бы попробовать такое же, но в железе.
You do not have the required permissions to view the files attached to this post.