Hlavní navigace

SVGATextMode aneb textový režim ještě nezemřel

Daniel Novotný 17. 6. 2004

Začalo to nevinně. U nás ve škole nainstalovali FreeBSD a já jsem si všiml, že v textovém režimu je blokový neblikající kurzor. Řekl jsem si "já chci taky!" a začal jsem hledat, jak na to.

Jedna z prvních odpovědí, na kterou jsem narazil, byla „v konfiguračním souboru SVGATextMode volba Cursor 0–31“.

Nainstaloval jsem tedy SVGATextMode zprvu kvůli blokovému kurzoru. Ukázalo se, že je užitečná i jeho hlavní funkce – přepínání textového režimu do vyšších rozlišení. Zprvu jsem si myslel, že toto potřebovat nebudu – mám pouze patnáctku monitor – ale když už jsem měl STM nainstalováno, zkoušel jsem experimentovat s přepínáním režimů a po návratu ke klasickému rozlišení 80×25 znaků mi připadalo, že je na obrazovce příliš málo informací a písmena jsou nesmyslně velká. Proto jsem program začal spouštět již při startu systému, aby nastavil příhodnější rozlišení.

S instalací SVGATextMode jsem neměl žádné problémy, použil jsem RPM balíček dodávaný s distribucí. Tento program tedy nemusíte nijak zvlášť shánět, bývá většinou k dispozici přímo v distribuci systému.

Po instalaci je nutné editovat soubor /etc/TextConfig, který obsahuje konfiguraci grafické karty a monitoru. Soubor je velmi podobný souboru XF86Config (tj. souboru pro konfiguraci X Window Systému) a potřebné hodnoty jako typ grafické karty, horizontální a vertikální frekvence monitoru, časování či ClockChip je možno opsat právě odtamtud – alespoň já jsem s tím se svou kartou S3 neměl žádné problémy.

Kromě možností okolo grafické karty lze nastavit ještě několik dalších věcí – zda před přepnutím módu provést sync(2), což je užitečné v případě, kdy se bojíte zatuhnutí systému, jak velký bude kurzor („blikavost“ ani barvu zde bohužel změnit nelze, tak jsem se uchýlil k jinému řešení – přes escape-sekvence nezávisle na SVGATextMode, viz soubor VGA-softcursor.txt v dokumentaci jádra) a který program se má zavolat těsně po změně módu – tzv. ResetProg (zde volám skript, který restartuje myšového démona GPM, aby změnu proporcí obrazovky vzal v úvahu).

Po změně módu se volá program setfont pro nastavení fontu. Jsou zde čtyři možnosti poměru stran fontu, u každé z nich je nějaký font zvolen. Pro české uživatele je příhodné změnit tyto fonty na jejich iso-8859–2 verze. Bohužel na svém počítači nemám český unicode font všech poměrů stran, takže v některých textových módech mohou např. rámečky v mc vypadat divně. Většiny běžných módů se to naštěstí netýká.

Na konci souboru TextConfig jsou řádky obsahující samotné textové módy. Na začátku řádku je vždy řetězec daný mód pojmenovávající. Při zvolení módu program hlídá, zda lze při dané konfiguraci grafické karty daný mód použít, pokud ne, nepovolí vám do něho přepnout.

Program voláme nejčastěji takto:

/usr/sbin/stm <název-módu>

(stm je link na SVGATextMode). Pro správnou funkci (manipulaci s grafickým HW) potřebuje být program spuštěn s rootovskými právy – já jej proto spouštím pomocí sudo(8).

Nejdůležitější volby:

-t <konfigurační-soubor>
volba jiného konfiguračního souboru než /etc/TextConfig
-r
nespouštěj ResetProg (např.: není potřeba restartovat GPM, když jsme na startu systému a GPM ještě vůbec není spuštěn)
-s
vypiš všechny použitelné módy pro danou konfiguraci grafické karty a monitoru

Druhým programem v balíčku je stm-menu. Zobrazí (použitím curses) menu, ve kterém vypíše názvy všech použitelných (stm -s) módů a po vybrání položky v menu do daného módu přepne.

Pokud se něco pokazí, je možno použít program set80, který vás rychle a bezpečně vrátí do starého dobrého standardního módu 80×25.

A které konkrétní módy se líbí mně? Po startu Linuxu se mi spustí stm s parametrem 80×32×9. Pro dobrou orientaci v mc či manuálových stránkách často pouštím moc hezky vypadající mód 100×37… a to je asi vše. Další módy „objevuju“ jen občas pomocí stm-menu.

Jediná věc, kterou bych programu vytknul, je nespolupráce s Xy, ale za to mohou spíše Xy než stm. Zkrátka pokud jste v Xech, přepnete na konzoli, změníte rozlišení stm, přepnete zpět do Xů, tak po přepnutí na konzoli můžete zažít nemilé překvapení.

Jinak se mi program líbí a už si téměř nedovedu představit práci v textovém režimu ve standardním 80×25.

Na závěr odkaz: freshmeat.net/pro­jects/svgatex­tmode

p.s. pokud chcete konkrétně vědět, jak jsem to vyřešil s tím kurzorem, je to echo -ne ‚\033[?17;15;255c‘

Našli jste v článku chybu?

25. 6. 2004 12:10

Petr Baudis (neregistrovaný)

Osobne jsem smysl SVGATextMode nikdy moc nepochopil, za behu jsem textovy mod nikdy prepinat nepotreboval (pokud mi ho nejaka SVGALib aplikace nezmrsila), a na nastavovani pri startu se mi mnohem lepe osvedcil vga= parametr kernelu.

Tedy dokud jsem nepresel na framebuffer. Programy, ktere maji co docineni s grafikou, nemusi byt setuid ani je nemusim poustet pod rootem, nepreblikava mi obrazovka, muzu pouzivat v mplayeru cvidix (uzasna vec), radeonfb je sice pomalejsi, nez cisty textmode, ovse…

Lupa.cz: Avast po spojení s AVG propustí 700 lidí

Avast po spojení s AVG propustí 700 lidí

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

Lupa.cz: Seznam mění vedení. Pavel Zima v čele končí

Seznam mění vedení. Pavel Zima v čele končí

Podnikatel.cz: Víme první výsledky doby odezvy #EET

Víme první výsledky doby odezvy #EET

Root.cz: 250 Mbit/s po telefonní lince, když máte štěstí

250 Mbit/s po telefonní lince, když máte štěstí

Vitalia.cz: Tesco: Chudá rodina si koupí levné polské kuře

Tesco: Chudá rodina si koupí levné polské kuře

DigiZone.cz: Recenze Westworld: zavraždit a...

Recenze Westworld: zavraždit a...

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

Podnikatel.cz: Podnikatelům dorazí varování od BSA

Podnikatelům dorazí varování od BSA

DigiZone.cz: Flix TV má set-top box s HEVC

Flix TV má set-top box s HEVC

120na80.cz: Rakovina oka. Jak ji poznáte?

Rakovina oka. Jak ji poznáte?

DigiZone.cz: Rádio Šlágr má licenci pro digi vysílání

Rádio Šlágr má licenci pro digi vysílání

Root.cz: Vypadl Google a rozbilo se toho hodně

Vypadl Google a rozbilo se toho hodně

Vitalia.cz: Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Podnikatel.cz: Na poslední chvíli šokuje výjimkami v EET

Na poslední chvíli šokuje výjimkami v EET

Vitalia.cz: Znáte „černý detox“? Ani to nezkoušejte

Znáte „černý detox“? Ani to nezkoušejte

Vitalia.cz: Baletky propagují zdravotní superpostel

Baletky propagují zdravotní superpostel

Vitalia.cz: Manželka je bio, ale na sex moc není

Manželka je bio, ale na sex moc není

120na80.cz: Horní cesty dýchací. Zkuste fytofarmaka

Horní cesty dýchací. Zkuste fytofarmaka

Měšec.cz: Jak vymáhat výživné zadarmo?

Jak vymáhat výživné zadarmo?