Programowanie w języku Pascal » FAQ

Jak przełączyć między miganiem a jasnym kolorem tła w trybie tekstowym

Przy definiowaniu atrybutów znaku w trybie tekstowym, po rozpisaniu na bity mamy:
- cztery ostatnie bity (o wagach 8, 4, 2, 1) definiują kolor tekstu
- bity o wagach 16, 32 i 64 definiują kolor tła.

Jednak najstarszy bit (128) może być wykorzystany dwojako: może oznaczać miganie albo najstarszy bit numeru koloru tła - wtedy mamy do dyspozycji 16 kolorów tła.

Jak zatem ustalić zastosowanie bitu o wadze 128? Wystarczy odpalić taki kod:


procedure ChangeBlink (N:Byte); assembler;
asm
 mov ax, 1003h
 mov bl, N
 mov bh, 00h
 int 10h
end;


Zależnie od podanego parametru:
NZastosowanie
najstarszego bitu
MiganieLiczba kolorów tła
0Kolor tłaBrak16
1MiganieJest8


 N = 00h - najsttekst nie będzie mógł migać, za to mamy do dyspozycji 16 kolorów tła
 N = 01h - tekst będzie mógł migać, ale mamy tylko ciemne tła do dyspozycji

1 komentarz

Marooned 2007-04-24 15:40

Widzę, że podany link ładnie rozwinąłeś w artykuł :)