Что-то получилось. Делал я все для компьютера Поиск, но не суть, ибо та же ISA-8, вид сбоку. Сначала я делал контроллер SD-карты, где PIC выполнял роль не только преобразователя параллельный<>SPI, но и роль процессора, который исполнял команды - читать сектор, писать сектор и тд. С SD-картой общаться по SPI, без файловой системы, блоками по 512 байт. Так, как порт ввода-вывода один, то придумал последовательный протокол обмена. Например, сначала посылаем в порт команду "чтение сектора", затем логический адрес блока SD-карты. После этого в цикле читаем из порта 512 байт. Контроллер после получения команды "чтение" читает в собственную память по SPI 512 байтный блок с SD карты. Затея была в том, что-бы для компьютера использовался обычный int 13h, а в своем расширении БИОС я бы просто преобразовывал функции прерывания int 13h в свои команды через порт ввода-вывода PIC'у. Плюс PIC занимался преобразованием логического-физического адреса, что бы всеми этими делениями-умножениями не грузить и без того хилый 8088 проц. Как только я начал читать из DOS'а первый сектор с SD-карты, интерес полностью угас, как это всегда и происходит
Но потом все-таки с появлением второго Поиска с неработающей клавиатурой пришлось вернуться к этой макетке. Выпилил нафиг все что касалось SD и сделал контроллер PS/2 клавиатуры + RTC. На том и остановился.
Вообщем, не без танцев с бубнами, но свою роль - PS/2 контроллер + часы оно выполняет исправно. Как, чего - не помню, это все было давно и неправда, потом полностью ушел в STM32 и щаз наверное даже лампочкой на PIC не моргну с наскоку. Вспоминать надо многое.