PREKODÉR32 v 3.7

About PREKODÉR aneb k čemu mi je? (program)

a) jít domů a soubor uložit v jiném kódování (pokud ho podporuje textový editor)
b) přepsat u kamaráda v jeho textovém editoru celý článek (pokud není moc dlouhý)
c) použít program PREKODÉR

Jak asi sami uznáte je nejjednodušší volbou použití programu PREKODÉR

Prekodér slouží k obousměrnému převodu kódu LATIN II, KAMENICKYCH, WINDOWS, ISO 8859-2, US. Někdy je třeba také ze souboru české znaky úplně odstranit. K tomu slouží převod KAMENIK ---> US nebo LATIN II ---> US atd.

Co je nového v programu PREKODÉR32 v 3.6 ?

Kódové stránky: (K=895=867, L=852, W=1250, ISO 8859-2, KOI8CS, MAC, US=437)

LK ... latin II ---> kamenik     LW ... latin II ---> windows
KL ... kamenik  ---> latin II    LUS .. latin II ---> US formátu
WK ... windows  ---> kamenik     KUS .. kamenik  ---> US formátu
WL ... windows  ---> latin II    WUS .. windows  ---> US formátu
KW ... kamenik  ---> windows     WI ... windows  ---> ISO 8859-2
KI ... kamenik  ---> ISO 8859-2  IW ... ISO 8859-2 -> windows
IK ... ISO 8859-2 -> kamenik     IL ... ISO 8859-2 -> latin II
LI ... latin II ---> ISO 8859-2  IUS .. ISO 8859-2 -> US formátu
K8W .. KOI8CS   ---> windows     K8US ..KOI8CS   ---> US formátu
MW ... MACINTOSH --> windows     MW ... windows  ---> MACINTOSH
MUS .. MACINTOSH --> US formátu 
Příklad použití: prekoder.exe dopis1.txt dopis2.txt kw


Pokud nevíte v jakém kódování to je, stačí nahrát text do editovacího okna a vyzkoušet např.:
LATIN II 852 ---> US, ťuknout na PŘEVEĎ
ISO 8859-2    ---> US, ťuknout na PŘEVEĎ atd.


Seznam kódů:

1. KAMENÍK 895, 867	(K)   Starší ale své doby docela dobrá čeština, též KYEBCS2
2. LATIN II 852		(L)   Čeština pod WINDOWS pro aplikace DOS (nádhera co?)
3. WINDOWS 1250		(W)   Čeština používaná WINDOWS pro aplikace WINDOWS (např. MSWORD ap.)
4. ISO 8859-2		(I)   Středoevropská latinka ISO (UNIX)
5. KOI8CS		(K8)  Stará norma CS. Trochu archaické, ale snad to někdo ještě použije.
6. MAC			(M)   Kódování pro MACINTOSH
7. US FORMAT		(US)  Standard USA, také ASCII, 7 bit. formát

Pozn: Pokud se Vám bude zdát, že pod WINDOWS 95 jsou 2 (dvě) češtiny tak máte naprostou pravdu. Jsou to pro aplikace DOS LATIN II a pro aplikace WINDOWS 1250. Pokud si ještě pustíte např. účetnictví s vlastním ovladačem češtiny, můžete místo českých znaků vidět pouze paznaky. Ještě bych měl vysvětlit co to je ten US formát. Jak sám název napovídá je to formát bez hačků a čárek standard v USA. Proto US, ASCII, 7 bitový kód jedno a to samé jsou. U těchto kódování stále platí, že jeden byt je 8 bitů, ale 8. (osmý) bit je vždy nastaven na nulu. Ještě názorná ukázka 7 bit. písmenka A (ASCII hodnota 65, B=66, C=67 atd.).

hodnota 128 64 32 16 8 4 2 1
bit 0 1 0 0 0 0 0 1
číslo bitu 8. 7. 6. 5. 4. 3. 2. 1.

Pokud máte problémy se zobrazováním českých znaků ve WINDOWS 95,98 v programech pro DOS, zkuste nejprve vypnout tuto češtinu (REM) v souboru CONFIG.SYS a AUTOEXEC.BAT.

rem CESTINA LATIN II 852 - soubor CONFIG.SYS
device=c:\windows\command\display.sys con=(ega,,1)
country=042,852,c:\windows\command\country.sys

rem cestina LATIN II 852 - soubor AUTOEXEC.BAT
mode con cp prepare=((852) c:\windows\command\ega.cpi)
mode con cp select=852
keyb cz,,c:\windows\command\keybrd2.sys

Typický problém:  czmix.gif (716 bytes)
Má být zobrazeno: cznormal.gif (736 bytes)
Řešení: Odremovat češtinu z CONFIG.SYS a AUTOEXEC.BAT !


Pro ty, co se jim to nikdy nezobrazuje dobře je zde tabulka českých kódů:

cesti1.gif (11106 bytes)
cesti2.gif (11310 bytes)
cesti3.gif (1813 bytes)

Nyní už pro ty zvědavé, co stále mají málo informací, názorná ukázka písmenka na kartě VGA stand. rozl. DOS 640x480.

128 64 32 16 8 4 2 1
               
        X X    
      X X      
    X X        
               
  X X X X      
        X X    
  X X X X X    
X X     X X    
X X     X X    
X X     X X    
  X X X   X X  
               
               
               
               

Jistě jste poznali písmenko "á". Ve znakové sadě VGA adaptéru je zakódováno ve 2 bytech (0,12,24,48,0,120,12,124,204,204,204,118,0,0,0,0).

Zde je příklad v BORLAND PASCALU 7.0:

program kapicka;
uses crt,dos;
var
  r : registers;
  a : array[1..336] of byte;
  i : word;
BEGIN
  i:=0;
  repeat
    a[1+i]:=255;
    a[2+i]:=0;
    a[3+i]:=0;
    a[4+i]:=8;
    a[5+i]:=28;
    a[6+i]:=60;
    a[7+i]:=62;
    a[8+i]:=126;
    a[9+i]:=126;
    a[10+i]:=60;
    a[11+i]:=0;
    a[12+i]:=0;
    a[13+i]:=0;
    a[14+i]:=0;
    a[15+i]:=0;
    a[16+i]:=255;
    inc(i,16);
  until i>304;
  {(0,12,24,48,0,120,12,124,204,204,204,118,0,0,0,0)}
  { predefinovani znaku "p" jako "dlouhe a"}
  a[321]:=0;
  a[322]:=12;
  a[323]:=24;
  a[324]:=48;
  a[325]:=0;
  a[326]:=120;
  a[327]:=12;
  a[328]:=124;
  a[329]:=204;
  a[330]:=204;
  a[331]:=204;
  a[332]:=118;
  a[333]:=0;
  a[334]:=0;
  a[335]:=0;
  a[336]:=0;
  { zavedeni znaku do bloku 1 }
  r.ah:=$11;
  r.al:=$00;
  r.bh:=$10;   { 16 bytu na 1 znak }
  r.bl:=$01;   { do ktereho bloku, 0-7 VGA }
  r.cx:=21;    { pocet znaku }
  r.dx:=92;    { ASCII kod prvniho definovaneho znaku }
  r.es:=seg(a);
  r.bp:=ofs(a);
  intr($10,r);
  { aktivace znaku }
  r.ah:=$11;
  r.al:=$03;
  r.bl:=01;
  intr($10,r);
  readln;
  { puvodni stav }
  r.ah:=$11;
  r.al:=$03;
  r.bl:=0;
  intr($10,r);
  {textmode(c80);}
END.