procedure chyba;
begin
  writeln('pr.: ',jmenoprogramu,' "vstsoubor.pripona" "vystsoubor.prip" "funkce"');
  writeln('pozn.: soubor+pripona = max. 12 znaku');
  writeln('fce: k = koduj                     d = dekoduj');
  halt;
end;

procedure otevri;
var soub:file;
begin
  write('Otevri');
  {$I-} Assign(soub, jmeno1);Reset(soub);Close(soub); {$I+}
  if IOResult<>0 then begin writeln('> Vstupni soubor nenalezen.');chyba;end;

  Assign(FromF,jmeno1);Reset(FromF,1);
  Assign(  ToF,jmeno2);Rewrite(ToF,1);
end;

procedure zavri;
begin
  write('Zavri');
  Close(FromF);
  Close(ToF);
end;

procedure nacti_blok_k;
begin
  write('Nacti blok');
  BlockRead(FromF,VstBuf,SizeOf(VstBuf),Nacteno);
  if Nacteno=0 then Konec:=false;
end;

procedure zapis_blok_k;
begin
  write('Zapis blok');
    BlockWrite(ToF,VystBuf,ZapsanoX,Zapsano);
    if Zapsano<>ZapsanoX then
      begin
        writeln('>Chyba pri zapisu (mozny nedostatek mista na disku).');
        chyba;
      end;
end;


procedure zapis_blok_d;
begin
  write('Zapis blok-d');
    BlockWrite(ToF,VstBuf,ZapsanoX,Zapsano);
    if Zapsano<>ZapsanoX then
      begin
        writeln('>Chyba pri zapisu (mozny nedostatek mista na disku).');
        chyba;
      end;
end;
