Karabas-128

Реплика ZX Spectrum 128K с настоящим Z80, которая помещается в оригинальный корпус 48K

Чип
Z80 + Altera EPM7128STC100
Видео
RGB, PAL
Память
128 KB
Последняя ревизия
B2
Лицензия
WTFPL

GitHub ★ 39

Karabas-128

Karabas-128 — реплика ZX Spectrum 128K с настоящим процессором Z80, где почти вся логика находится в CPLD Altera EPM7128STC100. Плата рассчитана на оригинальный корпус ZX Spectrum 48K с резиновыми клавишами.

Идея была в том, чтобы сделать недорогой клон 128K из минимума компонентов.

Сборка

Начинать стоит с SMD-компонентов. Для CPLD нужен фен или паяльная станция с жалом «микроволна». Не вставляйте DIP-микросхемы в панельки до первого программирования CPLD. Прошивка заливается через JTAG с помощью USB Blaster, а правильно собранная плата не требует настройки.

Режимы экрана

С одним дополнительным диодом плата переключается между режимами Pentagon и ULA48 (с эмуляцией contended memory): RESET+1 и RESET+2. Спасибо solegstar с zx-pk.ru.

Благодарности

Проект CPLD основан на Speccy2007 от syd и его версии с одной микросхемой памяти от .jackson. Часть схемы взята из Harlequin 48K rev.G от Superfo.

Файлы и документация

Фото и рендеры

Видео

Ещё видео (5)

Ролики автора и сообщества на YouTube, названия на языке оригинала.

История ревизий платы

История ревизий Karabas-128:

Ревизия A

Первая работающая ревизия karabas-128. Информацию по багам и нюансам смотрите в ERRATA.

Ревизия B

  • Исправлен баг в неправильно разведенном коннекторе RGB (спасибо Nika за помощь в поиске бага)

  • Переразведены силовые линии, должно помочь с шумами от LM8596

  • Добавлена индуктивность + конденсаторы на AD724 для понижения наводок от цифровой части

  • Добавлен подстроечный конденсатор для точной регулировки AD724

  • Модуль чтения с ленты на TL712 заменен на модуль на базе CD4069 (спасибо tank-uk за идею и реализацию)

  • Добавлен 3.3В регулятор для поддержки EPM3128

  • Добавлен светодиод для индикации наличия питания

Ревизия B1

  • сигнал CLK_BUS на краевом слоте ZX BUS разведен с помощью одного из свободных инверторов IC4 (спасибо Ricardo Saraiva за обнаружение бага)

  • Убран регулятор 3.3В, так как EPM3128 имеет меньшее количество i/o линий, что катастрофически для Карабаса

  • Добавлен диод между A11 и N_RESET для поддержки переключения режимов по RESET+1, RESET+2 (спасибо solegstar за идею и реализацию!)

Ревизия B2

  • Импорт проекта в Kicad

  • Небольшая косметика