
По ходу можно попробовать добавить цвет с помощью 2х свободных битиков знакогенератора (в стандартном знакогенераторе РК там записаны единички) - получится один из 4 цветов на каждую горизонтальную плашку:
00 - красным по чёрному;
01 - зелёным по чёрному;
10 - синим по чёрному;
11 - белым по чёрному (значение по умолчанию).
Таким образом мы как бы получим цветные тайлы, которых будет 2 набора, переключаемых программно, т.е. всего 256 (т.к. знакогенератор 2кб). При этом придётся расширить монитор, чтобы при рестарте он заполнял бы это ОЗУ стандартным шрифтом, который теперь будет храниться в ПЗУ монитора (которое напомню у нас 8кб где пока используется только 2кб).
Если всё также уталкиваться в размеры 15x10 см (ну или в предел моей стандартной лицензии игла 16x10), то возможно следует всю новую мелкую логику (включая регистр управления страницами памяти) затолкать в одну палку/галку. Туда же можно добавить поддержку нескольких предопределённых палитр (как минимум двух - RGB как описано выше и аля CGA с Magenta и Cyan).
P.S. Подключение ОЗУ шрифтов к шине данных можно сделать по адресам C000...C800, когда в регистре управления установлена несуществующая страница 7 (например) - в этом случае ВГ75 уходит в тень (собственно также как и сейчас если установлена ненулевая страница - 1,2 или 3), а _CS_C000 выходящий на внешний разъём не активируется. Ну и ещё один бит в регистре управления может быть отведён под переключение палитр (0-RGBW, 1-YCMW).
P.P.S. Вообще можно и универсальную RGB палитру попробовать сделать, которая задавалась бы 12 битами (3 бита RGB на каждый цвет из 4), но тогда одной галки не хватит - придётся ставить что-то побольше типа XC9536. Регистр управления при этом превратится в 5 трёхбитных регистров доступных только на запись:
#F000 - RAM page (0,1,2,3 and 7 for font update) // в будущем память можно увеличить - тогда наверное для доступа к шрифтам надо просто в этот регистр писать #FF
#F0С0 - RGB for color 0
#F0С1 - RGB for color 1
#F0С2 - RGB for color 2
#F0С3 - RGB for color 3
(отличать регистры палитры от регистра страниц можно одним битом адреса A7 ну или двумя, если хватит ног у CPLD)