часто применяют (заранее просчитанные) таблицы
Вид для печати
Либо так, либо подумать в сторону амиговского copper'а, который пишет в штатную видеопамять, но умеет очень быстро делать ряд операций, разгружая ЦП. А уж если совсем помечтать, то объединить этот условный copper с аппаратным спрайтовым или спрайтово-тайловым движком. Не уверен, нужно ли при этом объединять аналоговый видеосигнал, т.к. в той же NES, вроде как, сделано гораздо проще - если в определённой точке экрана есть пиксель спрайта, то рисуется он, а если нет (или он прозрачный) - то рисуется пиксель фона, в качестве которого на "Векторе" ИМХО и логично использовать штатные видеопамять и видеоконтроллер.
Таким образом, copper дал бы возможность аппаратного ускорения графических эффектов, которые не "натянешь" на спрайтово-тайловые движки. И, с другой стороны, не было бы типичного для игровых приставок ограничения, когда графика обязательно должна быть "втиснута в прокрустово ложе" спрайтово-тайловой парадигмы (в этом плане интересно почитать про боль портирования Another World на Sega)
Пусть не к "Вектору", а к "Ориону" 9958 успешно подключён. Ещё видео с заполнением текстового экрана. Кроме того, подключал TMS9929A, он недорогой и его легко купить. Конечно, он ощутимо слабее 9958, но и с ним можно получить хорошие графические и текстовые возможности.
Думаю, проблем с подключением к "Вектору" быть не должно. Я, даже, думал об этом, но не реализовал.
Во-первых, это можно сказать про любую железку, которую ПО компьютера не понимает. Для этого и существуют драйверы. Во-вторых, старые программы прекрасно выводят картинку через штатный видеоконтроллер. В третьих, моей целью было только показать возможность подключения видеопроцессора на собственном примере, вроде как сказать: "Вот, ребята, это возможно, ничего сложного - смотрите сами. Нужно только сделать." Я планировал создать для "Ориона" аппаратно-программный комплект для разработки игр и других приложений, использующих видеопроцессор. Но, по некоторым причинам, продолжать не стал. Возможно, кто-нибудь реализует подобное и для "Вектора".
Я не возражаю, железка интересная получилась, но если бы у неё была возможность обрабатывать картинку в той же самой штатной видеопамяти, типа, программа без драйвера рисует картинку по-старому, а с драйвером начинает использовать ускоритель. А так уже давно была идея подключить к Вектору обычную vga или ega видеокарту через isa-порт -- это просто, быстро, эффективно, но совершенно несовместимо со всем ПО.
- - - Добавлено - - -
Кстати, а схемкой подключения 9958 к Ориону не поделитесь? ;)
Это возможно с устройством подобным тому, которое разрабатывал Syntal. К ВУ подключается плисовая девборда со своим видеовыходом, и записи в VRAM дублируется и наружу. Так можно получить и чисто потребительские плюшки (корректный видеосигнал, одинаковые точки в HiRes, скандаблер и т.п.) и программные навороты. Но тут так - msxные VDP можно на векторе задействовать сравнительно просто, например частично депортировав msxные игрушки с переводом эмуляции видео обратно на VDP, а с ПО под новые возможности вопросов больше.
https://disk.yandex.ru/i/9YLNSgG2iNzLdQ
На схеме два типа памяти, можно устанавливать любой.
По поводу портированных с MSX игр - так как эти игры, насколько я помню, все с MSX1, то и видеопроцессор можно использовать попроще, вместо дорогого V9958 (9938) - дешёвый и доступный TMS9929A. Правда, есть два минуса - чтобы получить с него выход RGB, нужно сделать схему-преобразователь (9929 выдаёт компонентный сигнал) и видеопамять лучше заменить на статическую, это ещё четыре корпуса. Но ничего сложного и дефицитного не потребуется.
А насчёт ПО - Андреем Родионовым разработаны библиотеки для BDS-C специально для MSX. Думаю, этот компилятор и эти библиотеки вполне можно использовать на "Векторе" для разработок. Конечно, потребуется кое-что подправить.