Да не так уж и плющит...IgorR76 wrote:Во топикстартера плющит!

Когда у меня "разрыв шаблона", я тоже "готов поверить в параллельные миры, "Скользящих" и пр. хренотень"...
а ещё я при этом исполняю "танцы с бубнами"...

Moderator: Shaos
Да не так уж и плющит...IgorR76 wrote:Во топикстартера плющит!
Вы, это, аккуратнееnewold86 wrote:Иногда, когда я много думаю над чем-то, мне это начинает сниться. И вот потом очень сложно отделить в голове реальность от того, что приснилось...
Созрел стащить код видеокартыVic3Dexe wrote:Видеокарта более-менее готова, по крайней мере, в ближайшее время я ее трогать не буду.
...
Биос толком не тестил, не падает - и ладно, детально буду смотреть, когда будет с чего загрузить тестилки.
Ничего себе - это я сам во всем должен разбираться ??? Форменное безобразие !Vic3Dexe wrote:Доступен, но много чего я не проверял.
Так что на свой страх и риск.
Поскольку видео-биос собирается вместе с основным биосом, даю всё, там разбирайтесь.
Code: Select all
D(15 downto 8) <= D_CPU;
D(7 downto 0) <= D_CPU;
nBHE <= not A_CPU(0);
D_CPU <= D(7 downto 0) when ((V_READ = '1') and (A_CPU(0) = '0'))
else D(15 downto 8) when ((V_READ = '1') and (A_CPU(0) = '1'))
else "ZZZZZZZZ";
Ээээ... теоретически - не знаю, на практикте - как получится. Вроде все так.newold86 wrote:Как думаете, навскидку, так заработает ?
25 ровно. Мониторы нормально хавают.newold86 wrote:VGA_CLK - очевидно, 25.175
А это VGA_CLK/2, т.е. 12.5 для 320-точечных режимов.newold86 wrote:А VGA_CLK2 - это что ?
Опять же, смотрите внимательно к каким битам какого регистра этот камент относится. В данном случае это MOR[3:2], который у __оригинальной__ VGA умеет переключать кристаллы 28 и 25 МГц, для перестройки с NTSC на PAL. Но мне это нафиг не надо, почему на ASCII картинке оно и подписано "игнорим". Просто вписал для себя, что оно делает, чтобы не забыть, почему именно "игнорим".newold86 wrote:опорный клок (28/25 у VGA)
Никак не кореллируется. А почему должно? Два режима у нас на LCD-мониторе 21 века, который всякие 720х480 или 320х200 не понимает от слова совсем. Т.е. все VGA-режимы необходимо свести к этим двум.newold86 wrote:никак не коррелируется с "у нас всего 2 режима: 720х400 (h:n, v:p) и 640х480 (nn)"
Сделать легко, почему бы и нет? Вдруг где-то понадобится.newold86 wrote:Вопрос 3 - INT_VIDEO - это прерывание ? Если да, то зачем ?
4 плейна ВГА прекрасно делал в одном 32-битном ворде. При этом был хитрый обращятор, который с одной стороны имел настройки режимов и ВГА-шину, через которую долбились в память ВГА-дырки, с другой стороны интерфейс на контроллер обычной памяти.Vic3Dexe wrote:И в догонку - если будете повторять - сразу продумайте где и чем вы наберете 256к VGA-памяти, причем 4 плейнами (EGA/VGA на один байт проца обмениваются с памятью четырьмя).
Исходя из этого - переделывайте контроллер памяти, мой во-1 сильно быстрый для штатной ХТ-памяти, во-2 сложный из-за того, что VRAM и RAM у меня - суть одна микросхема, и та 16-битная. А т.к. мой VGA допускает 16-битные обращения, с памятью он и 8 байтами может обменяться на одно обращение проца.
Любые обращения проца, не имеющие отношения к видеопамяти используют ТОЛЬКО слот 0. Т.е. все, что касается работы с памятью мимо видеокарты, пропускается через этот слот.newold86 wrote:слот 0 используется только для BIOS, или я ошибаюсь ?
Под ВГА-шиной подразумевается 32-битная память? Ну так такой не имеется. А внутри FPGA хоть 256 бит можно сделать, вопрос ведь в том, как это пропихнуть через 16 бит наружу.angry_troll wrote:4 плейна ВГА прекрасно делал в одном 32-битном ворде. При этом был хитрый обращятор, который с одной стороны имел настройки режимов и ВГА-шину, через которую долбились в память ВГА-дырки, с другой стороны интерфейс на контроллер обычной памяти.