Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Andrey Voitenkov                     2:5020/400     10 Mar 2004  23:00:20
 To : Eugene Grosbein
 Subject : Re: странный случай
 -------------------------------------------------------------------------------- 
 
 Eugene Grosbein wrote:
 
 [...]
 
 > Компилируем в ./vesareg, загрузившись без телевизора говорим рутом:
 > ./vesareg > 80x25.vg
 > 
 > Перезагрузившись с телевизором, говорим рутом:
 > ./vesareg -w < 80x25.vg
 > 
 > Ура, имеем нормальную консоль. Кто-нибудь может дать хорошее объяснение
 > происходящему? Разумеется, не на уровне комментариев
 > /* записать 0x19 в reg */, а по сути?
 > 
 
 По сути она сохраняет внутренние регистры CGA(и выше) видеоконтроллера в
 файл (в момент времени, когда установлен нормальный видеорежим). Потом
 просто восстанавливает состояния контроллера (и получаем нормальный
 видеорежим).
 
 3D4 - это индексный порт, в него пишется индекс внутреннего регистра,
 к которому потом будет обращение через порт 3D5.
 
 Единственное, чего я не понимаю, это вот:
 - --- cut ---
        outb(0x3d4,0x11);
        outb(0x3d5,crtc[0x11]&0x7f);
 - --- cut ---
 Hадо доку по контроллеру смотреть, скорее всего это команда
 инициализации или сброса состояния.
 
 -- 
 mccloud@
 --- ifmail v.2.15dev5.3
  * Origin: Volia ISP (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: странный случай   Andrey Voitenkov   10 Mar 2004 23:00:20 
Архивное /ru.unix.bsd/1184707d452df.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional