FPGA поселила десятки старых дисков ProFile на одну microSD-карту
У старого Apple II есть неприятная граница между «компьютер жив» и «компьютер можно загрузить»: накопитель ProFile давно стал редким, дорогим и механически уязвимым. В проекте ProFile Emulator эту коробку с дисками заменяет четырёхслойная плата r2 размером 100 × 55 мм. На ней ECP5 в TQFP-144 принимает обращения по исторической шине ProFile и отвечает так, словно с другой стороны кабеля по-прежнему работает фирменный жёсткий диск Apple.
Накопитель на конце родного кабеля
Плата подключается к кабелю штатной ProFile I/O card. Эта деталь меняет смысл эмулятора: он воспроизводит внешний накопитель, тогда как сама интерфейсная карта остаётся обязательной частью системы. Автор подтвердил работу на Apple //e с ROM 341-0299-B; совместимость с Apple /// и Lisa пока остаётся заявленной целью, без такого же стенда.
microSD здесь служит сменным складом эпохи ProFile. Карта форматируется в FAT32, образы лежат в каталоге HD, а параметры задаёт profile.cfg. Заявлен размер образа до 32 MB, предусмотрен выбор образа при запуске. FPGA получает блоковые запросы от старой шины, находит соответствующие данные на карте и возвращает их в формате, которого ждёт контроллер Apple.
Смена диска через адреса шины
Смена диска через адреса шины
От Gerber-файлов к работающему железу
Самая красивая часть конструкции появляется там, где старой машине предлагают больше одного диска без второго корпуса и второго кабеля. Автор выделил специальные обращения к блокам ProFile для выбора следующего образа. Поверх этого работает shim-драйвер для ProDOS: он регистрирует тома /D1 и /D2 и переключает обслуживаемый файл образа. Такой трюк годится именно для ProDOS; переносить обещание двух томов на GS/OS оснований пока нет.
От Gerber-файлов к работающему железу
23 октября автор показал уже не рендер и не одиночный макет: была изготовлена партия PCB, нанесена паста, плата прошла reflow, после чего пришлось устранить перемычки припоя и запрограммировать устройство. Готовый экземпляр обслуживает Apple //e. Репозиторий содержит Verilog, тестбенчи, KiCad-проект, Gerber, трафарет, BOM, pick-and-place и чертёж сборки — достаточно, чтобы изучать одновременно протокол, HDL и реальную производственную подготовку платы.
У воспроизводимости пока есть острые края. На момент публикации JLCPCB не поставлял для заказа FPGA, USB-C-разъём и DB-25; готового bitstream в репозитории нет, для первой прошивки нужен доступ к J4/JTAG. Обновление с SD, автоматический откат на golden image и перезагрузка после обновления прошли симуляции, но автор ещё не подтвердил их на собранной плате. Нет также сторонних испытаний таймингов шины, длительной стабильности и работы с другими машинами. Однако сам факт особенно хорош именно своей материальностью: FPGA уже ведёт диалог с компьютером 1980-х по его родному кабелю, а целая библиотека дисков помещается на карте памяти.