Page 1 of 2

Текстмод в одной банке.

PostPosted: 08 Sep 2011, 15:31
by DimkaM
lvd wrote: А 2 текстмода, жрущие ресурсы и ничем не отличающиеся, я не хочу делать.
Ну не так уж и много ресурсов, наверно, надо.
Допустим TextMode1:
•lsym — страница 5(7), смещение #01C0 + Y*64 + X
•lattr — страница 1(3), смещение #21C0 + Y*64 + X
•rsym — страница 5(7), смещение #21C0 + Y*64 + X
•rattr — страница 1(3), смещение #01C1 + Y*64 + X
TextMode2:
•lsym — страница 1(3), смещение #11C0 + Y*64 + X
•lattr — страница 1(3), смещение #21C0 + Y*64 + X
•rsym — страница 1(3), смещение #31C0 + Y*64 + X
•rattr — страница 1(3), смещение #01C1 + Y*64 + X
Всего лишь один битик перекинуть, с щёлкалки страниц на A12(или как там в альтере,незнаю).
А режим 1 или 2 выбирается нулевым битом порта #EFF7.

И видео страница чистой остаётся

Re: Текстмод в одной банке.

PostPosted: 08 Sep 2011, 15:57
by DimkaM
Или так:
•lsym — страница 1(3), смещение #09C0 + Y*64 + X
•lattr — страница 1(3), смещение #21C0 + Y*64 + X
•rsym — страница 1(3), смещение #29C0 + Y*64 + X
•rattr — страница 1(3), смещение #01C1 + Y*64 + X

Re: Текстмод в одной банке.

PostPosted: 08 Sep 2011, 20:10
by deathsoft
Все текстмоды давно придуманы на ПЦ, их всего 2 вида:
1. байт текста, байт атрибута
2. байты текста в одной плоскости, атрибуты в другой
И первое и второе управляется одним битом, в зависимости от него младший адрес либо подается на выбор плоскости либо на A0. (Советую почитать доку на VGA контроллер, как у него организована работа с памятью, вид режима текст/графика выбирается еще 1 битом).

Re: Текстмод в одной банке.

PostPosted: 08 Sep 2011, 21:31
by lvd
Ну вот, опять к вопросу об ценных идеях. Я даже и не думал, что можно существующий техтмод запихать в пагу, постоянно в уме висели вопли о линейном текстмоде. Подумаю на досуге над предложенным вариантом пихания в 1 пагу.

Re: Текстмод в одной банке.

PostPosted: 09 Sep 2011, 05:51
by DimkaM
И если будет возможность, то избавится от этой голимой единички:
•rattr — страница 1(3), смещение #01C1 + Y*64 + X
Откуда она только взялась, АТМ'ку наверно криво развели.

Re: Текстмод в одной банке.

PostPosted: 09 Sep 2011, 08:13
by lvd
DimkaM wrote:Откуда она только взялась, АТМ'ку наверно криво развели.

Криво спроектировали. У них вышло, что лишнее знакоместо задержки для вычитки из фонтромы, а аттры прут без такой задержки. В результате выборка стартует на знакоместо раньше, чем должна была, далее буковки задерживаются а аттры нет. И получается сдвинутае на 1 знакоместо друг относительно друга байда.

Re: Текстмод в одной банке.

PostPosted: 09 Sep 2011, 08:35
by DimkaM
lvd wrote:Криво спроектировали
А кодером выёбывайся, отдельную процедуру XY->ADDR держать надо. Без единички одним XOR'ом можно из адреса символа в адрес атрибута сконвертить, а с единичкой нужно ещё проверять чётность и разные XOR'ы делать.

Re: Текстмод в одной банке.

PostPosted: 07 Jan 2012, 17:19
by DimkaM
Завтра протестю, сёдня Евы под рукой нету.

Re: Текстмод в одной банке.

PostPosted: 07 Jan 2012, 17:57
by lvd
DimkaM wrote:Завтра протестю, сёдня Евы под рукой нету.

Чорд, токо хотел написать.

По поводу единички, она осталась :-D


Для слоупоков: r530 на гуглокоде. С доками уже.

Re: Текстмод в одной банке.

PostPosted: 08 Jan 2012, 09:55
by DimkaM
С первого раза не получилось, с атрибутами накосячил. Со второго заработала.