у спектрума проблема скорости с любым способом (хоть и меньше чем, к примеру, у амстрада)
Вид для печати
у спектрума проблема скорости с любым способом (хоть и меньше чем, к примеру, у амстрада)
Смысл быстро копировать буфер на экран если сам буфер готовится 10 кадров, при 14 МГц его технически можно скопировать за 2.5-5% времени кадра, но какой в этом смысл?
Чтобы мерцаний и волн на изображении не было.
Это типовая буферизация, всего лишь 1% от общей функциональности любой видеокарты, при чём делается в памяти самой видеокарты практически автоматически, рисование останавливается после очередного элемента и буфер скидывается в экранный буфер.....а рисовать то кто будет?
И да, это делает обычный DMA, банально два 16 битных счётчика.
Вот только это копирование из буфера на экран и надо сделать. С остальным Z80 как-нибудь справится.
А зачем вообще писать в пзу? ставишь DMA который будет тупо копировать 0-ой экран в 1-ый, включаешь отображения с 1 экрана, пишешь в 0 экран, когда начинается вертикальный бордюр включаешь dma на копирование из 0 в 1 экран, при 7 мгц в одной строке 448 тактов, R/W 224 такта, 6144 байта копируются за 28 строк, в вертикальном бордюре 112 строк+16 строк синхро, то есть можно тупо перебросить даже после INT`а, 64 строки за глаза хватит.
Это и весь проект помимо наложения по AND?
- - - Добавлено - - -
Вообще даже в моей TestBoard на Altera EP4CE10 внутри 52 Кб двухпортовой озу, для твоей идеи нужно 4 банка по 6144, R+G+B+I, итого 24 Кб, эта память лопатит 200 мб/сек при любой разрядности, маску наложит и двойной буфер и вывод на экран за такое время что z80 даже пёрднуть не успеет.
И её можно организовать в 256 бит ширины, за 1 такт сразу 32 байта, то есть за 2 такта перенесётся ВСЯ ГОРИЗОНТАЛЬНАЯ СТРОКА, и это при 100МГц.
А вообще всё это извращение прекрасно будет работать и с динамической sdram на 16 мегабайт за 50 рублей.
- - - Добавлено - - -
А кстати, в развёртку пентагона прекрасно лезет экран 320x240, наверное все согласятся что бордюр давным давно уже не нужен, в далёких 90-x я свой монитор электроника полностью перепаял и у меня в развёртке бордюра вообще не было, вот это было красота, когда у других видел мааааленький такой экранчик с просто ГИГАНТСКИМ бордюром меня шок брал, в спектруме ТРЕТЬ экрана это тупо бордюр, любой современный телевизор с scart прекрасно жуёт любую развёртку, прошли те времена где кинескоповый телек весь бордюр перезаряжал ёмкости во время обратного хода луча, он вот зачем? тем более что матрицы, даже кинескопа никаким образом не совпадают пиксельно с развёрткой пентагона, всё равно пиксели частично перезасвечиваются.
- - - Добавлено - - -
Вот смотрю всяких "современных" zx-мутантов и улыбка сама на морде лица появляется, стоит cortex-m0 на 45 MIPS 32 битных операндов с dma 25 мб/сек в качестве флеш дисковода и Z80 8 бит на 0,6 MIPS с dma (ldir) на 0,16 мб/сек в качестве основного :D
- - - Добавлено - - -
Как будем бороться с клешингом? :v2_dizzy_vodka2:
Вложение 72300
Только для одного буфера надо 64 килобайта памяти. А их надо минимум три.
В этой игре клешинга нет. Клешинг - когда фон и спрайты разного цвета.
Nesser, откуда скрин? знал же, но из головы вылетело
Desolator
https://viva-games.ru/game/desolator
там и поиграй
- - - Добавлено - - -
Вот таких одноцветных игр сотни, они типа внимания не заслуживают?
Тпппрррррр каких ещё 64кб по 3??? тру колор в хд?
Ты меня пугаешь......из 6 912 в 196 689 ?
320x240 с 256 цветами занимает 76800, с буфером 153 600
Буфер, буфер и экран. 8к адресов по 8 точек по 6 бит.