Блог страдающего Лиса
Lorem ipsum hello dolor sit world amet
14 окт 2024 Пн
Встраивание видеоадаптера
Что я сделал вчера
Как и обычно, вчера я занимался тем, что создавал видеоадаптер текстового режима и пытался его встроить в систему. Получилось, но с большим трудом, потому что я отлаживал его не на вериляторе, как обычно, а прямо на реальной микросхеме, делая видеозахват изображения с VGA. Пока что то, что получается, весьма неплохо. Делал встраивание блоков памяти, связывал их между собой. Как я и говорил ранее, дел у меня еще очень много, и следующее что надо сделать, это контроллер прерываний, клавиатуру, кстати говоря, надо, причем не тот контроллер клавы, как в оригинальном 8088, а свой, отдающий по прерыванию ASCII символы для того, чтобы экономить место в биосе для этой цели.
Даже не представляю, сколько времени мне придется это делать, но лучше делать постепенно, но все-таки делать, чем аврально все делать, а потом бросать на половине пути. Даже то, что я взял собственный проект на доработку, уже хороший маркер того, что перестал заниматься одним и тем же.
Деление
Одним из важных пунктов в разработке системы трехмерного видеоускорителя является то, что ему требуется делитель, и как можно более быстрый. Для этого можно использовать смешанный делитель: потактовый и последовательный. Модуль деления довольно сложный для понимания и это даже не поместится в одну короткую статью, чтобы объяснить как он работает, надо много строчить символов, чтобы объяснить. Да и кому объяснять? Меня все равно никто не читает и никто не поймет.
Еще бы мне доработать сайт, чтобы создавать иллюстрации удобно было, а не то что сейчас, не могу нормально сделать ничего. Даже картинку добавить представляет большую сложность.
Логотуп андройда
А еще я вчера сделал интересную вещь на плисе, нарисовал андройда с помощью всяких штук-дрюк, просто чисто. Ну ты понял. На чистой логике.
Контроллер прерываний
В какой-то мере мне удалось сделать контроллер прерываний, который получает новые события, ставит в очередь и рассылает процессору по мере того как он обрабатывает прерывания. Дело в том что прерывания могут появляться одновременно, а процессор просто не успевать их обрабатывать вовремя, так что сделано было так: когда появляется прерывание, то оно просто ставится в очередь. Отсылается последовательно, процессор когда обрабатывает очередное прерывание, должен самостоятельно выставить EOI через
Также я сделал для ПЛИС реальной видеоразрешение 320 на 200, цветное, с палитрой, которую можно программировать через порты. Это мне пригодится для создания игр и приложений. А еще, я хотел бы сделать видеоразрешение 640 на 400, 16 цветов, в будущем. Может и не пригодится, но все равно было бы неплохо. Короче, вот все всё поняли:
Как и обычно, вчера я занимался тем, что создавал видеоадаптер текстового режима и пытался его встроить в систему. Получилось, но с большим трудом, потому что я отлаживал его не на вериляторе, как обычно, а прямо на реальной микросхеме, делая видеозахват изображения с VGA. Пока что то, что получается, весьма неплохо. Делал встраивание блоков памяти, связывал их между собой. Как я и говорил ранее, дел у меня еще очень много, и следующее что надо сделать, это контроллер прерываний, клавиатуру, кстати говоря, надо, причем не тот контроллер клавы, как в оригинальном 8088, а свой, отдающий по прерыванию ASCII символы для того, чтобы экономить место в биосе для этой цели.
Даже не представляю, сколько времени мне придется это делать, но лучше делать постепенно, но все-таки делать, чем аврально все делать, а потом бросать на половине пути. Даже то, что я взял собственный проект на доработку, уже хороший маркер того, что перестал заниматься одним и тем же.
Деление
Одним из важных пунктов в разработке системы трехмерного видеоускорителя является то, что ему требуется делитель, и как можно более быстрый. Для этого можно использовать смешанный делитель: потактовый и последовательный. Модуль деления довольно сложный для понимания и это даже не поместится в одну короткую статью, чтобы объяснить как он работает, надо много строчить символов, чтобы объяснить. Да и кому объяснять? Меня все равно никто не читает и никто не поймет.
Еще бы мне доработать сайт, чтобы создавать иллюстрации удобно было, а не то что сейчас, не могу нормально сделать ничего. Даже картинку добавить представляет большую сложность.
Логотуп андройда
А еще я вчера сделал интересную вещь на плисе, нарисовал андройда с помощью всяких штук-дрюк, просто чисто. Ну ты понял. На чистой логике.
Контроллер прерываний
В какой-то мере мне удалось сделать контроллер прерываний, который получает новые события, ставит в очередь и рассылает процессору по мере того как он обрабатывает прерывания. Дело в том что прерывания могут появляться одновременно, а процессор просто не успевать их обрабатывать вовремя, так что сделано было так: когда появляется прерывание, то оно просто ставится в очередь. Отсылается последовательно, процессор когда обрабатывает очередное прерывание, должен самостоятельно выставить EOI через
OUT ($20),$20
, и тогда сработает следующее, как только флаг IF=1. Хотя слать туда можно что угодно, честно говоря.Также я сделал для ПЛИС реальной видеоразрешение 320 на 200, цветное, с палитрой, которую можно программировать через порты. Это мне пригодится для создания игр и приложений. А еще, я хотел бы сделать видеоразрешение 640 на 400, 16 цветов, в будущем. Может и не пригодится, но все равно было бы неплохо. Короче, вот все всё поняли:
<< Ранние записи |
Поздние записи >>