home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 1996 Counselor / COMPUSERVE.ISO / mailbox / packer / x1094e / x1user.dk < prev    next >
Encoding:
Text File  |  1996-05-04  |  54.6 KB  |  1,117 lines

  1.  
  2. -------------------------------------------------------------------------------
  3. DOKUMENT TYPE               : X1 BRUGER VEJLEDNING
  4. SPROG                       : DANSK
  5. TEKST TYPE                  : IKKE-FORMATERET ASCII
  6. KARAKTER SÆT                : IBM CODEPAGE 850
  7. PROGRAM VERSION BESKREVET   : X1 v0.94e (beta)
  8. SIDST OPDATERET (ÅR MÅNED..): 960430
  9. SIDSTE OPDATERINGS NOTE     : FOREL¥BIG TEKST -- SENERE ÆNDRINGER KAN FOREKOMME
  10. SKREVET AF                  : S.V.
  11. OVERSÆTTELSE                : S.V.
  12. ANDRE DOKUMENTER            : X1 DISCLAIMER,
  13.                               X1 CHANGE HISTORY,
  14. -------------------------------------------------------------------------------
  15.  
  16.        VIGTIGT: Brug ikke dette program f¢r De har læst, forstået og
  17.                 accepteret betingelserne angivet i 'disclaimer' dokumentet.
  18.  
  19.                          ===============================
  20.                          =    X1 BRUGER VEJLEDNING     =
  21.                          =  GENEREL VERSION OVERSIGT   =
  22.                          ===============================
  23.  
  24.    1.  Maskinelle forudsætninger (minimum)
  25.    2.  "Hvad er dette?" (abstract)
  26.    3.  "Hvordan-bruger-man"
  27.          (kommando-linie format og kommandoer/option gennemgang)
  28.    4.  Environment variable (sprog modulet)
  29.    5.  Formater og komprimerings metoder (oversigt og eksempler)
  30.    6.  Midlertidige fil navne
  31.    7.  Slut retur værdier
  32.  
  33.  
  34.  
  35. 1. Maskinelle forudsætninger
  36. ===========================
  37. CPU  : 386sx eller bedre
  38. RAM  : minimum 4Mb hukommelse er stærkt anbefalelsesværdigt
  39. OS   : DOS 3.3 (eller senere)
  40.        OS/2 (32-bit)
  41.  
  42. Anskaf et specifikt program for hvert operativ system.
  43.  
  44. Vær klar over, at hukommelses-mængden angivet af programmet er indirekte
  45. rapporteret via DPMI - hvilket er den "synlige" mængde. Afhængig af gældende
  46. hukommelses-styring (DOS...OS2...), så kan disk-simuleret hukommelse være
  47. anvendt og den rapporterede mængde hukommelse dermed overstige den fysisk
  48. installerede mængde. Men det betyder mindre for programmet, hvordan hukommelsen
  49. er organiseret. Det er vigtigere, hvor meget der tillades anvendt (af
  50. hukommelses manageren).
  51.  
  52.  
  53. 2. "Hvad er dette?"
  54. ==================
  55. Dette er et arkiv program. Det komprimerer flere filer til en enkelt fil.
  56. Det er helt kommando-linie styret. Komprimering og dekomprimering er kombineret
  57. i samme program. Det har en hastighed-formindskelses-
  58. hukommelses vægtning, der hælder mod bedre komprimerings grad og fors¢ger
  59. fuldt ud at udnytte tilgængelige ressourcer (hukommelse) på den platform, der
  60. anvendes.
  61.  
  62. Mest fremtrædende egenskaber er:
  63.  
  64. * Introducerer .x arkiv format
  65. * Kompatibel med ARJ,(PK)ZIP,LHA(RC),ZOO,HA
  66. * Flersproget bruger-grænseflade
  67. * Indeholder "eksperimentelle" metoder, som f¢lge af en udforskning af
  68.   h¢jt-ydende algoritmer. "eksperimentel" indikerer ikke ustabilitet
  69.   - men snarere at metoderne ikke kan forventes underst¢ttet med
  70.   tilbagevirkende kraft i alle fremtidige versioner.
  71.  
  72. Kommando-linie grænsefladen svarer til den for ZOO og HA. Men udvalget af
  73. options svarer mere til ARJ og LHA. Grænsefladen har lidt til fælles med
  74. PKZIP. Men en basal viden til andre arkiv programmer, så skulle det være
  75. muligt at overspringe dele af denne dokumentation.
  76.  
  77. 3. "Hvordan-bruger-man" (kommando-linie format og kommandoer/option gennemgang)
  78. ==============================================================================
  79.  
  80.    Dette er specifikationerne for programmet. Hvis programmet opf¢rer sig
  81. anderledes, så kan det enten skyldes egentlige fejl - eller en ufuldendt
  82. implementation af funktionerne if¢lge specifikationen.
  83.   Brugen af beskrivelsen "arkiv program" for et program vil stille
  84. forventninger - baseret på egenskaberne for andre tilsvarende programmer.
  85. Derfor bliver det n¢dvendigt at notere hvad der ER! - men også til nogen grad
  86. hvad der IKKE ER - implementeret.
  87.   Hvis en del af programmet ikke er implementeret, så vil en besked
  88. "**Ikke implementeret**" indlede afsnittet. Yderligere arbejde skulle
  89. reducere antallet af sådanne beskeder.
  90.  
  91.  
  92. Kommando-linie format
  93. ---------------------
  94.  
  95.  X1 kommando[<options>..] <arkiv> [<filmaske>..]
  96.  Definitioner:
  97.  kommando[<options>..] kun een kommando er tilladt (f¢rste enkelte karakter)
  98.                        fulgt af en serie options - uden blanktegn mellem
  99.                        kommando og options - eller imellem options.
  100.  <arkiv>               er arkiv navnet - i mangel af endelse benyttes .ZIP
  101.  <filmaske>            angiver filerne, der skal arkiveres, som i mangel af
  102.                        en rigtig filmaske inkluderer alle filer som standard.
  103.                        Fil selektions symboler *, ? kan anvendes. Filnavn
  104.                        er specificeret i normal forlængelse af direktorie-sti
  105.                        navnet.
  106.  
  107.  
  108. Kommando-linie syntaks regler
  109. -----------------------------
  110. Kommandoer og options kan specificeres med enten små eller store bogstaver.
  111.  
  112. Vær klar over at "x1" har to direktorie-sti ekskluderings options i stedet
  113. for een, som normalt. Dette er en f¢lge af regel #1 og #2.
  114.  
  115.      Regel #1 (direktorie-sti inkluderet):
  116.      -------------------------------------
  117.        Som standard inkluderes alle direktorie-stier angivet på kommando-linien
  118.      i arkivet - med mindre ekskluderings option "X" er tilkoblet.
  119.  
  120.      Regel #2 (direktorie-sti inkluderet):
  121.      -------------------------------------
  122.        Som standard inkluderes alle direktorie-stier under rekursiv fil
  123.        s¢gning ("R" option tilkoblet) i arkivet - med mindre ekskluderings
  124.        option "E" er tilkoblet. Dette er noget forskellig fra andre
  125.        arkiv programmer.
  126.  
  127.     Regel #3 (flere filmasker relaterende til samme direktorie)
  128.     -----------------------------------------------------------
  129.        Filmaske uden direktorie-sti overtager automatisk samme direktorie-sti
  130.      som forudgående filmaske.
  131.        Forklaret mere detaljeret:
  132.      Antag "x1 a test <arg[1]> .. <arg[i]> <arg[i+1]>..". Hvis <arg[i+1]>
  133.      ikke indeholder "\" ("/") eller ":" så antages den at virke under samme
  134.      direktorie-sti som <arg_i> (som kan virke under samme direktorie-sti som
  135.      <arg[i-1]>...etc.). Hvad betyder det? Det indebærer at:
  136.      "x1 a test \dir1\dir2\*.c *.h" bevirker samme resultat som
  137.      "x1 a test \dir1\dir2\*.c \dir1\dir2\*.h". Hvad betyder det ikke? Tja,
  138.      "x1 a test dir1\*.c dir2\*.h" virker ikke som
  139.      "x1 a test dir1\*.c dir1\dir2\*.h" fordi "dir2\*.h" indeholder "\".
  140.      Ej heller vil "x1 a test dir1 *.c" virke som "x1 a test dir1\*.* dir\*.c",
  141.      hvilket ville være meningsl¢st.
  142.         Berettigelsen for denne konvention hviler helt på sparet indtastning
  143.      (bemærk hvordan De ikke beh¢vede at gentage "\dir1\dir2\" på kommando-
  144.      linien i det f¢rste eksempel).
  145.         Side-effekter/ulemper? Hvis De ¢nsker filer fra det aktuelle
  146.      direktorie, så må de specificeres f¢r individuelle direktorier angives...
  147.      Dette er stadig kun en konvention, og skulle ikke begrænse brugeren på
  148.      nogen måde.
  149.  
  150.     Regel #4 (direktorie lagret i arkivet)
  151.     --------------------------------------
  152.        Specificering af et direktorie-navn på kommando-linien foranlediger
  153.     komprimering af alle filer i det pågældende direktorie. Bemærk at
  154.     "x1 a test \dir1\dir2" bevirker samme resultat som "x1 a test \dir1\dir2\"
  155.     eller "x1 a test \dir1\dir2\*.*". Og hvis den rekursive option "R" er
  156.     tilkoblet, så vil alle filer h¢jere i "\dir1\dir2\.." også blive
  157.     inkluderet.
  158.        Men se Dem for! Hvis filnavne er identiske med direktorie-sti navne, så
  159.     er det ikke altid indlysende, hvad slut-resultatet bliver.
  160.  
  161.  
  162.                                   ==============
  163.                                   = KOMMANDOER =
  164.                                   ==============
  165.  
  166. ? kommando (viser hjælpe-tekst)
  167. -----------------------------------
  168.      Denne kommando bruges kun i sammenhængen "x1 ?".
  169.      Der vil blive vist en kort oversigt over kommandoer og options.
  170.      Den viste skærmside er ikke den samme som vises, når programmet startes
  171.      uden parametre. Uden specificerede parametre vises kun kommandoer
  172.      (imellem dem er "?").
  173.  
  174.      Hvis informationen vises for hurtigt, så kan det anbefales at
  175.      omdirigere data til en fil ("x1 ? >arkiv.lst"), som efterf¢lgende
  176.      kan gennemses i brugerens favorit fil-viser (Norton-Commander-F3) eller
  177.      i dennes favorit editor...
  178.  
  179.      Mange sprog er underst¢ttet. Ikke desto mindre var nogle sprog
  180.      vanskeligere at forstå end andre. Så det kan ikke garanteres at meninger
  181.      altid er krystal klare. I tilfælde af tvivl, så b¢r de engelske, danske,
  182.      franske, tyske, spanske sider konsulteres (i den prioritets rækkef¢lge).
  183.  
  184.      (På PC) Hvis brugerens codepage opsætning er forkert, så vil resultatet
  185.      være manglende karakterer. Så brug venligst en smule tid på at få orden
  186.      i codepage opsætningen.
  187.  
  188.  
  189.  
  190. A kommando (adder filer til arkiv)
  191. ----------------------------------
  192.      Tilladte options: $,A,C,E,F,I,K,L,M,N,O,R,S,T,U,V,X,Y,Z
  193.  
  194.      Denne kommando opererer på to niveauer:
  195.          * skaber arkiv og tilf¢jer filer...
  196.          * opdaterer (genåbner) arkiv og tilf¢jer filer...
  197.      Men grundliggende komprimeres og adderes specificerede filer til et arkiv.
  198.      Hvis det angivne arkiv ikke findes, så bliver et dannet med det
  199.      specificerede navn. Eksisterer det allerede eksisterede, så bliver det
  200.      opdateret. Det betyder, at nye filer med samme navn og direktorie-sti som
  201.      allerede eksisterende arkiv indgange vil overskrive disse gamle indgange.
  202.      Nogle få undtagelser findes (når der komprimeres til "solid" format)
  203.      - men det falder udenfor sammenhængen lige nu.
  204.  
  205.         Hvis basis direktoriet er udeladt, så antages i mangel af bedre
  206.      det aktuelle direktorie at gælde.
  207.  
  208.         Hvis der ikke er specificeret nogen filer på kommando-linien, så
  209.      adderes alle filer (i det aktuelle direktorie). Dette betyder at
  210.      "x1 a test.x" komprimerer alt i det gældende direktorie.
  211.  
  212.         På ingen måde er det muligt at komprimere et arkiv under opdatering
  213.      ind i sig selv.
  214.  
  215.         Hvis endelsen på destinations-arkivet ikke er specificeret, så anvendes
  216.      i mangel af anden angivelse endelsen ZIP. Hvis der ¢nskes komprimeret til
  217.      et andet format, så er det n¢dvendigt at specificere destinations-arkivet
  218.      med format endelsen (ARJ,LZH,..). Det er ikke muligt at komprimere til
  219.      arkiver med helt vilkårlige endelser.
  220.  
  221.         Filnavne kan ekskluderes fra addition til arkivet ved brug af option
  222.      "Z".
  223.  
  224.      Eksempel (komprimerer til standard format): x1 a arkiv.x   min_fil.doc
  225.      Eksempel (komprimerer til ZIP format)     : x1 a arkiv.zip min_fil.doc
  226.  
  227. C kommando (kommentarer tilf¢jes til arkiv)
  228. --------------------------
  229.      **Ikke implementeret**
  230.      Tilladte options: I,C
  231.  
  232.      Denne kommando tilf¢jer kommentarer til et arkiv. Kommentarer er mulige
  233.      i ARJ,ZIP,ZOO,X - men ikke i LHA,HA formater. Dette skyldes forskelle i
  234.      den indre struktur.
  235.  
  236. D kommando (sletter filer fra arkiv)
  237. ---------------------------------------
  238.      Tilladte options: I,S,Z
  239.  
  240.      For at kunne blive slettet, så må en navn og direktorie-sti indgang i
  241.      arkivet svare til et argument på kommando-linien (ingen forskelle mellem
  242.      store og små bogstaver - i DOS).
  243.  
  244.      Hvis en fil-angivelse ikke indeholder en direktorie-sti, så kommer den til
  245.      at gælde for alle indgange i arkivet - uagtet brugerens direktorie-stier.
  246.      Det betyder at "x1 d test.x *.pas" vil tillige slette indgange
  247.      "dir1/dir2/*.pas" i arkivet (hvis forefindes). Ikke desto mindre, så vil
  248.      "x1 d test.x /dir1/dir2/*.pas" kun slette sidstnævnte filer af denne type
  249.      - ikke "*.pas" filer uden direktorie-sti.
  250.  
  251.      Hvis alle filer ¢nskes slettet, så fjernes hele arkivet (slettes).
  252.  
  253.      Filnavne kan ekskluderes fra sletning ved brug af option "Z".
  254.  
  255.      Eksempel (sletter adskillige indgange): x1 d arkiv.x *.pas *.doc
  256.      Eksempel (sletter hele arkivet)       : x1 d arkiv *.*
  257.  
  258. E kommando (udpakker filer uden direktorie-sti)
  259. -------------------------------------------
  260.      Tilladte options: $,A,F,I,N,O,T,W,Y,Z
  261.  
  262.      Denne kommando er identisk med "X" kommandoen ved "E" optionen.
  263.      Den er kun underst¢ttet på grund af en generel enighed mellem
  264.      arkiv programmer (om at underst¢tte denne kommando).
  265.  
  266.      Under udpakning vil dato/tid mærkningen for den originale fil blive
  267.      genskabt sammen med fil indholdet. En CRC kontrol udf¢res for at
  268.      konstatere at operationen lykkedes. Ikke desto mindre er filen
  269.      kontrolleret f¢r skrivning til disk, snarere end kontrolleret under
  270.      efterf¢lgende kontrol-læsning.
  271.  
  272.      Filer kan uddrages til et bruger-specificeret direktorie eller drev - men
  273.      i mangel af anden angivelse, så uddrages filer til det aktuelle
  274.      direktorie. Al udpakning sker uden direktorie-sti (til enkelt direktorie).
  275.  
  276.      Når der uddrages til et angivet direktorie, så skal direktorie-navnet
  277.      ende med "/" eller "\" som i eksemplet "x1 e test.x c:\dir\". Hvis ikke
  278.      direktorie-navnet ender med et sådant tegn, som i "x1 e test.x c:\dir"
  279.      så vil det få programmet til at antage, at det er en fil, der fors¢ges
  280.      udpakket fra arkivet.
  281.  
  282.      Hvis der uddrages til et ikke-eksisterende (kommando-linie angivet)
  283.      direktorie, så vil brugeren blive advaret om hændelsen og konsulteret
  284.      f¢r yderligere handling. Advarsels foresp¢rgslen præsenterer flere
  285.      forskellige l¢sninger - fra "(j)a" (skab kun direktorie denne ene gang)
  286.      til "(a)ldrig" (skab intet på noget tidspunkt). Brugeren svarer ved at
  287.      trykke på tasten i parentes. De faktiske ord og bogstaver kan variere
  288.      for forskellige sprog moduler. Det er muligt at komme foresp¢rgslen i
  289.      fork¢bet ved at aktivere en af optionerne "Y" eller "N".
  290.  
  291.      Når der udpakkes til et specificeret drev, så er det tilladt at ende
  292.      drev-angivelsen med ":" som angivet i eksemplet "x1 e test.x a:". Dette
  293.      skyldes, at intet filnavn antages at ende med dette tegn. Hvis adskillige
  294.      destinations drev/direktorier er angivet (som i eksempel
  295.      "x1 e test.x a: b: c:"), så vil det sidst angivne drev/direktorie blive
  296.      brugt til den faktiske udpakning ("c:").
  297.  
  298.      Hvis der fors¢ges udpakket en fil til et direktorie af samme navn, så vil
  299.      filen blive oversprunget (med mindre smart overskrivning er valgt med
  300.      option "W").
  301.  
  302.      Hvis der fors¢ges udpakket til et allerede benyttet filnavn, så vil
  303.      brugeren blive advaret om hændelsen og konsulteret f¢r yderligere
  304.      handling. Eneste undtagelse er 0-længde filer. De antages ikke at
  305.      indeholde nogen vigtig information - og overskrives uden advarsel.
  306.      Advarsels foresp¢rgslen tillader flere forskellige l¢sninger - fra
  307.      "(j)a" (overskriv kun denne ene gang) til "(a)ldrig" (overskriv på intet
  308.      tidspunkt). Brugeren svarer ved at trykke på tasten i parentes. De
  309.      faktiske ord og bogstaver kan variere for forskellige sprog.
  310.  
  311.      Eksempel (udpakke fil): x1 e arkiv.x file_id.diz
  312.  
  313.      
  314. F kommando (opfrisk filer allerede i arkivet)
  315. ----------------------------------------------
  316.      **Ikke implementeret**
  317.      Tilladte options: E,F,I,X
  318.  
  319.      Denne kommando erstatter indgange i et arkiv med nyerere filer, om
  320.      muligt. Dette betyder, at navnene og det totale antal filer forbliver
  321.      uændrede for arkivet. Kun indholdet af de arkiverede filer ændres.
  322.  
  323.      Kun filers dato/tid mærkning er sammenlignet under s¢gningen efter
  324.      nyerere filer. Hvis filer er ældre - eller har samme dato/tid (men
  325.      muligvis forskellig st¢rrelse), så bliver de oversprunget.
  326.  
  327.      Mulig konflikt opstår i situationen, hvor arkivet indeholder direktorie-
  328.      stier. Skal det være n¢dvendigt at specificere disse indgange specielt?
  329.      Svaret valgt her er: nej! I stedet er det n¢dvendigt at ekskludere dem
  330.      med option "E" - hvis de af ukendte grunde ikke ¢nskes opfrisket som
  331.      andre filer.
  332.  
  333.      I lighed med "A" kommandoen, når der ikke er specificeret nogen filer på
  334.      kommando-linien, så vil alle filer i arkivet blive fors¢gt opfrisket.
  335.      Dette indebærer, at "x1 f test.x" fors¢ger at opfriske alle filer i
  336.      "test.x" - mens "x1 f test.x *.pas" kun fors¢ger at opfriske "*.pas" filer
  337.      (inklusiv muligvis "dir1/dir2/*.pas" filer). Kun
  338.      "x1 fz test.x *.pas dir1/dir2/*.pas" s¢rger for at ekskludere sidstnævnte
  339.      filer fra opfrisknings processen.
  340.  
  341.      Eksempel (opfrisk alle filer): "x1 f test.x"
  342.  
  343. L kommando (lister arkivets indhold)
  344. ------------------------------------------
  345.      Tilladte options: E,I,O,Z
  346.      Denne kommando fremviser standard information for filer i arkivet. Dette
  347.      inkluderer:
  348.       * fuld navn inkl. direktorie-sti
  349.       * komprimeret og ukomprimeret fil st¢rrelse
  350.       * komprimering ratio (% komprimeret/ukomprimeret)
  351.       * dato (i år-måned-dato format)
  352.       * tid  (i time-minut-sekund format)
  353.       * CRC (16/32 bit)
  354.       * DOS type fil attributter
  355.       * komprimerings metode (angivet ved nummer snarere end navne-betegnelse)
  356.  
  357.      Tegnet "*" tilf¢jet for enden af filnavnet angiver at filen er krypteret
  358.      og f¢lgelig ikke kan udpakkes.
  359.  
  360.      Dynamisk "justering" af direktorie-sti og navn bliver fors¢gt. Hvis ikke
  361.      der er plads nok til navnet, så bliver alt listet på een linie. Ellers
  362.      bliver direktorie og filnavn placeret på en linie for sig selv - og
  363.      yderligere information anbragt på næste linie.
  364.  
  365.      Der er muligt at liste alle arkiver i et specifikt format ("x1 l *.lzh")
  366.      eller alle arkiver, som programmet kan genkende ("x1 l *"), hvilket
  367.      kun betyder unders¢gelse af filer med genkendelige navne-endelser (".arj",
  368.      ".zip",..). Det er også muligt kun at vise udvalgte filer i arkiver
  369.      ("x1 l test.x *.zip *.nfo *.diz").
  370.  
  371.      Hvis informationen bliver vist for hurtigt, så kan det tilrådes at
  372.      omdirigere data til en fil ("x1 l *.zip >arkiv.lst"), som efterf¢lgende
  373.      kan beses i brugerens favorit fil-viser (Norton-Commander-F3) eller i
  374.      dennes favorit editor...
  375.  
  376.      Eksempel (lister alle *.ARJ,*.ZIP,...): "x1 l *"
  377.  
  378. T kommando (tester arkiv indhold fejlfrihed)
  379. ------------------------------------------------
  380.      Tilladte options: E,F,I,O,Z
  381.  
  382.      Denne kommando har to måder at virke på:
  383.        * kontrollere at arkiv programmet ikke har lavet fejl under
  384.          komprimeringen
  385.        * kontrollere for fejl påf¢rt arkivet under transmission
  386.          (lagrings medie eller hardware transmissions kanal fejl).
  387.      Den f¢rste fejltype er klart den mest alarmerende. Derfor er det også
  388.      normalt den slags fejl, der testes for. F¢lgelig kræves udpakning af
  389.      data (til hukommelsen).
  390.  
  391.      For at sikre succes ved mulig udpakning, så er en kontrol funktion
  392.      givet i form af CRC (cyclic-redundancy-checksum) kontrol. Selvom
  393.      processen ikke er 100% sikker, så er det normalt tilstrækkeligt
  394.      for de fleste praktiske situationer.
  395.      Det er muligt at teste hele indholdet i flere arkiver ("x1 t *.zip"),
  396.      individuelle filer i en gruppe af arkiver ("x1 t *.zip *.doc")
  397.      eller individuelle filer i individuelle arkiver
  398.      ("x1 t arkiv.x readme.doc").
  399.  
  400.      Når arkiv programmet kan antages at have udf¢rt sin opgave
  401.      tilfredsstillende, så kan en simplere CRC kontrol udf¢res. Denne kontrol
  402.      aktiveres med option "F". Hvordan vides at programmet har udf¢rt opgaven
  403.      ordentlig? Tja, pr¢v f¢rst en normal CRC kontrol (straks efter
  404.      kompression). Hvis resultatet er i orden, så kan kun efterf¢lgende
  405.      transmissions fejl forventes.
  406.  
  407.      Brugeren informeres om alle uoverensstemmelser mellem den lagrede CRC og
  408.      den faktisk konstaterede CRC værdi. I tilfælde af fejl, så er det meget
  409.      usandsynligt at data kan reddes - med mindre en form for ECC (fejl
  410.      korrigerende kode) er aktiveret. Opdatering af arkiver med CRC fejl er
  411.      ofte mulig, men kan ikke anbefales.
  412.  
  413.      Hvis "solid" arkiver er involveret, så kan CRC kontrol tage ekstra lang
  414.      tid. Dette skyldes, at udpakning af en fil kan kræve udpakning af en
  415.      forudgående fil. I "solid" tilstand  komprimeres filer i en st¢rre
  416.      sammenhæng, og dette nedsætter tilgængeligheden.
  417.  
  418.      Eksempel (tester alle filer): "x1 t test.x"
  419.  
  420. P kommando (beskyt arkiv mod fejl)
  421. -------------------------------------
  422.      Tilladte options: I,L
  423.  
  424.      Denne kommando vil bevirke tilf¢jelse af fejlkorrigerende kode (ECC) til
  425.      arkivet - hvilket skulle beskytte mod efterf¢lgende medie eller
  426.      transmissions fejl.
  427.  
  428.      Tilf¢jelse af fejlkorrigende kode mere end een gang vil forhindres.
  429.      Snarere end at bruge en simple metode flere gange - så anbefales
  430.      det at bruge en mere sofistikeret metode, der bedre udnytter pladsen
  431.      anvendt for fejlkorrigerende kode.
  432.  
  433.      På samme måde som komprimerings metoder kan specialiseres til bestemte
  434.      typer data - så må fejlkorrigerende metoder optimeres for bestemte typer
  435.      fejl. I modsat tilfælde, så vil resultatet være ¢get pladskrav til den
  436.      fejlkorrigerende kode og mindre effektiv udnyttelse af denne. Flere
  437.      metoder vil blive gjort tilgængelige senere.
  438.  
  439.      Den fremdeles anvendte beskyttelses metode er "Niveau-1" fejlkorrigerende
  440.      kode.
  441.  
  442.      Niveau-1:
  443.        Denne type beskyttelse henvender sig til den almindelige bruger, som
  444.        ¢nsker lav sikkerhed mod en beskeden ¢gning af filst¢rrelsen. Metoden er
  445.        specialiseret til at kompensere for disk(ette) medie fejl. Den kan
  446.        kun kompensere for een (!) tabt sektor. Sektor st¢rrelsen kan
  447.        konfigureres. I mangel af anden angivelse, benyttes 512 bytes.
  448.        Hvis der ¢nskes sikret mere end een sektor, så b¢r h¢jere niveauer
  449.        af fejlbeskyttelse benyttes.
  450.        Hvis der beskyttes en (N) bytes stor sektor, så vil den tilf¢jede
  451.        beskyttelses-data fylde (N+45) bytes. De 48 bytes dækker et hoved med
  452.        en CRC for selve hovedet, en CRC for den totale fil og nogle
  453.        test-vektorer brugt til hurtigere lokalisering af fejl.
  454.        Beskyttelses-data anbringes i en sammenhængende blok i filens
  455.        begyndelse.
  456.  
  457.      Niveau-2:
  458.        Mangler stadig at blive implementeret.
  459.  
  460.      *ADVARSEL* Fejlkorrigende kode kan kun rette et begrænset antal fejl.
  461.      En metode vil kun rette et antal fejl if¢lge specifikationen. Derfor:
  462.      læs specifikationen - og forvent ingen yderligere retning af fejl!!!
  463.      Fejlkorrektion giver kun en begrænset sikkerhed. Det er vigtigt ikke
  464.      at have blind tillid til metoderne.
  465.  
  466.      Eksempel:
  467.        Beskyttelse mod en enkelt tabt (floppy diskette) 512 byte sektor
  468.        opnås med kommandoen "x1 p test.zip" eller "x1 pm1 test.zip".
  469.        For at beskytte mod en tabt 1024 byte sektor (hvilket er 2*512, derfor
  470.        "m2"), så bruges "x1 pm2 test.zip".
  471.  
  472. R kommando (reparer arkiv for mulige fejl)
  473. ------------------------------------------------
  474.      Tilladte options: I
  475.  
  476.      Denne kommando har to måder at virke på:
  477.        * Egentlig reparation af fejl i arkivet
  478.        * Kontrol af at arkivet er fri for fejl
  479.          Anderledes normal CRC verifikation af arkivet ber¢rer kun
  480.          komprimerede filer - ikke eventuelle defekter påf¢rt den
  481.          fejlkorrigerende kode. Den "udvidede test" kan naturligvis kun
  482.          udf¢res hvis der er fejlkorrigerende kode til stede.
  483.  
  484.      Reparering af arkiv med fejlkorrigerende beskyttelse:
  485.      Denne kommando fjerner fejl - enten i den fejlkorrigerende kode - eller
  486.      i de egentlige data. Hvis fejlene er korrigerbare, så vil de blive rettet
  487.      og en besked vil tilkendegive at processen var succesfuld.
  488.  
  489.      Reparering af arkiv uden fejlkorrigerende beskyttelse:
  490.      Dette har aldrig været meningen med kommandoen. I dette arkiv
  491.      program er der ingen generel "reparerings" funktion for beskadigede
  492.      arkiver. I stedet opfordres brugeren til at fors¢ge udpakning af
  493.      arkivet - og gen-pakning af data. Problemet med at bibringe en generel
  494.      "reparations" funktion er velkendte fra programmet "PKZipFix" vedlagt
  495.      arkiv programmet "PKZIP". Reparations programmet opdaterer blot
  496.      data-hoved strukturen - uden at kontrollere for fejl inden i individuelle
  497.      filer. Nye filer kan derefter adderes til arkivet. Men uden kontrol (CRC)
  498.      test, er det ikke muligt at vide om arkivet indeholder yderligere fejl.
  499.      Undladen at kontrollere for denne mulighed kan resultere i en falsk
  500.      tryghedsfornemmelse. Derfor virker det umiddelbart bedre kun at tillade
  501.      udpakning fra arkivet - hvilket tillader brugeren at bed¢mme omfanget
  502.      af skaderne. Hvis arkiv er lagret indenfor arkiv, så opstår farlige
  503.      muligheder for fejltagelser. I sådanne tilfælde er det bedst at brugeren
  504.      fors¢ger at bed¢mme situationen. Hvis på een eller anden måde folk ville
  505.      være interesserede (og villige til at betale!), så kan et avanceret
  506.      fejl-korrigerings program konstrueres for nogle/alle af de forskellige
  507.      formater. Men det ville ikke ændre det faktum, at de fleste fejl normalt
  508.      er uoprettelige.
  509.  
  510.      Eksempel: "x1 r test.x"
  511.  
  512. U kommando (fjern arkiv beskyttelse - fjerner fejlbeskyttende kode)
  513. --------------------------------------------------------------
  514.      Tilladte options: I
  515.  
  516.      Denne kommando har den modsatte effekt af "P" kommandoen. Der fors¢ges
  517.      fjernet eventuel tilstedeværende beskyttende kode (ECC).
  518.      Mislykket fors¢g på at fjerne fejlkorrigerende kode han have to grunde:
  519.      ingen beskyttende kode - eller fejl der blokerer detektion af hovedet for
  520.      de fejlbeskyttende data. I sidstnævnte tilfælde kan det anbefales at
  521.      fors¢ge fejlkorrigering.
  522.  
  523.      Det kan tilrådes at fors¢ge at reparere for fejl f¢r sletning af
  524.      fejlkorrigerende kode. Selv om processen lykkes med at finde de
  525.      fejl-korrigerings data - så kan arkivet stadig indeholde fejl på andre
  526.      positioner. Ingen egentlig fejl-kontrol foretages ved fjernelse af
  527.      fejlkorrigerende data (for at ¢ge hastigheden).
  528.  
  529. X kommando (udpakker filer med fuld direktorie-sti)
  530. --------------------------------------------------
  531.      Tilladte options: $,A,E,F,I,N,O,T,W,Y,Z
  532.  
  533.      Den hovedsagelige forskel fra "E" kommandoen er, at filer udpakkes med
  534.      direktorie-sti (registreret i arkivet). Direktorie-stier kan gennemses
  535.      f¢r udpakning med "L" kommandoen.
  536.  
  537.      Filer kan udpakkes til et bruger specificeret direktorie - men i
  538.      mangel af angivelse, så udpakkes til det aktuelle - og nye
  539.      direktorier bygges ud fra aktuelle direktorie. Nogle direktorier kan ikke
  540.      lægges i forlængelse af det aktuelle direktorie. Det er direktorie-stier
  541.      som indeholder drev-angivelser eller angiver særlige rod-direktorier.
  542.      Sådanne direktorier anbringes på disken i henhold til den angivne
  543.      position.
  544.      Når der udpakkes til et angivet direktorie eller drev, så udbygges
  545.      direktorier i forlængelse af pågældende direktorie. For eksempel vil
  546.      "x1 x test.x a:" fors¢ge at udpakke alle filer til "a:" (mens direktorier
  547.      udbygges fra det aktuelle direktorie for det pågældende drev).
  548.  
  549.      Når udpakning kræver et ikke-eksisterende direktorie på disken, så
  550.      behandles situationen, som når der udpakkes til et ikke-eksisterende
  551.      (kommando-linie angivet) direktorie. Brugeren advares om hændelsen og
  552.      konsulteres f¢r yderligere handling.
  553.  
  554.  
  555.                                   ===========
  556.                                   = OPTIONS =
  557.                                   ===========
  558.  
  559. $ option (adder/uddrag disk volume label)
  560. ----------------------------------------
  561.      **Ikke implementeret**
  562.      Komprimering:
  563.      Tilf¢jer diskette label (for den f¢rste angivne filmaske) til
  564.      arkivet. I eksemplet "x1 a test.x *.* a:*.* b:*.* c:*.*", så vil disk
  565.      label for det aktuelle drev f¢jes til arkivet - fordi det aktuelle
  566.      drev er brugt for den f¢rste filmaske. "x1 a test.x a:*.* b:*.* c:*.*"
  567.      bevirker registrering af disk label for drev "a:".
  568.  
  569.      Udpakning:
  570.      Uddrager disk label (hvis tilgængelig) fra arkiv til disken, hvor filer
  571.      udpakkes. Fordi kun een disk label er tilladt i arkivet, så skulle
  572.      forvirring ikke være mulig.
  573.  
  574. A option (attributter gemme/gendanne)
  575. -------------------------------------
  576.      **Ikke implementeret**
  577.      General note: denne option var hovedsagelig tiltænkt "specielle
  578.      attributter" sådan som udvidede attributter i OS/2. Simple attributter,
  579.      sådan som fundet i DOS, gendannes altid.
  580.  
  581.      Komprimering:
  582.      Her er funktionen at gemme alle attributter (muligvis udvidede) i arkivet.
  583.  
  584.      Udpakning:
  585.      Her er funktionen at gendanne (muligvis udvidede) attributter. Operativ
  586.      system (OS) afhængige attributter kan kun gendannes under samme OS. i
  587.      tilfælde af OS konflikt, så gendannes attributterne enten ikke - eller
  588.      en passende erstatning findes.
  589.  
  590. C option (hent kommentar fra fil)
  591. --------------------------------------
  592.      **Ikke implementeret**
  593.     Kun brugt med "C" kommandoen.
  594.     Der er to måder at tilf¢je kommentarer til et arkiv:
  595.       * indskrivning fra tastaturet
  596.       * indsætte karakterer fra fil
  597.     Denne option aktiveres kun i tilfælde at kommentarer skal indlæses fra
  598.     fil.
  599.  
  600. E option (udelad direktorie-sti fra arkiv filer)
  601. ----------------------------------------
  602.      Komprimering:
  603.      Funktionen er at udelade direktorie-stien fundet under en eventuel
  604.      rekursiv s¢gning for filer. Hvis ikke aktiveret, så inkluderes
  605.      alle direktorier som standard.
  606.  
  607.      Udpakning:
  608.      Her er funktionen at sikre at alle filer udpakkes til samme direktorie
  609.      - uden hensyntagen til direktorierne gemt i arkivet.
  610.  
  611.      Fil opfriskning:
  612.      Funktionen er her at undgå opfriskning af filer med direktorie-sti i
  613.      arkivet. Hvis ikke aktiveret, så opfriskes alle filer som standard.
  614.  
  615. F option (tving fil flytning ind/ud af arkiv)
  616. --------------------------------------------------
  617.      **Ikke implementeret**
  618.      Komprimering:
  619.      Funktionen er her at slette filer fra disken, når alle filer er blevet
  620.      komprimerede og hele operationen synes vellykket. Dette sker for at
  621.      opnå ekstra sikkerhed - så hvis hele processen afbrydes i utide, så
  622.      b¢r det ikke resultere i tabte data.
  623.  
  624.      Udpakning:
  625.      Her er funktionen at reducere arkivets st¢rrelse - ved at slette indgange
  626.      svarende til udpakke filer.
  627.  
  628. I option (tavs mode)
  629. -----------------------
  630.      **Ikke implementeret**
  631.      Denne option undertrykker al skærm udskrift. Dette inkluderer alle
  632.      standard udskrifter og %-færdig-angivelse. Dette skulle tillade andre
  633.      programmer, at kalde programmet og lade arkiv programmet bearbejde
  634.      data - uden at skærmen forstyrres af udskrifter.
  635.  
  636. K option (overskriv eksisterende arkiv)
  637. ---------------------------------------
  638.      **Ikke implementeret**
  639.      Komprimering:
  640.      Her funktionen at overskrive et eventuelt eksisterende arkiv. Eller ville
  641.      arkivet være blevet opdateret - og nye indgange tilf¢jet til allerede
  642.      eksisterende.
  643. L<nummer> option (komprimerings niveau)
  644. -----------------------------------------
  645.      Komprimering:
  646.      Denne option angiver et mere detaljeret niveau af komprimering. Dette kan
  647.      betyde brug af mere hukommelse - eller nedsat/hurtigere komprimering
  648.      - alt afhængig af den valgte komprimerings metode.
  649.  
  650.      .x metode 4 : her er tilladte niveauer 0,1,2,3. Hver niveau bestemmer en
  651.                    forskellig hukommelses model.
  652.      andre metoder: <ingen effekt>
  653.  
  654. M<metode> option (komprimerings metode)
  655. ------------------------------------------
  656.      Komprimering:
  657.      Angiver anvendte komprimerings metode. Metoden er specificeret som et
  658.      nummer 0..256. Hvis nummeret ikke svarer til en gyldig komprimerings
  659.      metode, så vil en fejlbesked blive vist.
  660.  
  661. N option ("NEJ" antages ved alle foresp¢rgsler)
  662. ----------------------------------------
  663.      Udpakning:
  664.      Option "N" er komplementær til option "Y". Option "N" bevirker at alle
  665.      eventuelle foresp¢rgsler bliver besvaret med et "NEJ". Dette vil modvirke
  666.      alle fors¢g på at stoppe processen og sp¢rge brugeren til råds. Det
  667.      ber¢rer hovedsageligt overskrivning af filer, oprettelse af direktorier,
  668.      etc.
  669.  
  670. O option (ordne filer if¢lge navn,st¢rrelse,dato,etc.)
  671. ---------------------------------------------------------
  672.      **Ikke implementeret**
  673.      Der b¢r altid være to 'O' karakterer i option strengen på kommando-linien.
  674.      Mellem "O...O" angives sub-options - som definerer sorterings n¢gler
  675.      - og deres rangorden. Ikke desto mindre, hvis ingen andre options
  676.      efterf¢lger 'O' optionen, så kan det sidste 'O' udelades.
  677.  
  678.      Underst¢ttede sorterings sub-options er:
  679.        N: navn
  680.        S: st¢rrelse
  681.        D: dato
  682.        T: tid
  683.        (B: bedste komprimering)
  684.      Så for eksempel, "OSNO" betyder: sorter f¢rst med hensyn til st¢rrelse
  685.      - og hvis to filer har samme st¢rrelse, sorter da efter navn.
  686.  
  687.      Komprimering:
  688.      Under komprimering til et nyt arkiv, så indsættes filer i rækkef¢lgen
  689.      angivet ved sorterings-n¢glerne. Ved opdatering af et arkiv, så bliver
  690.      eksisterende indgange opdateret i gældende orden - mens nye
  691.      medlemmer sorteres if¢lge angivne options.
  692.  
  693.      Udpakning:
  694.      Her udpakkes filer i den orden, som fremgår af angivne options.
  695.  
  696.      Eksempel:
  697.        Sorter komprimerede filer mht. (1) dato (2) st¢rrelse og (3) navn:
  698.                             "x1 aodsno test.x *.*"
  699.  
  700. R option (rekursiv s¢gning gennem under-directorier)
  701. ----------------------------------------------------
  702.      Komprimering:
  703.      Uden denne option inkluderes kun filer i de kommando-linie specificere
  704.      direktorier. Hvis intet direktorie er eksplicit defineret, så
  705.      antages det aktuelle direktorie at gælde. Aktivering af denne option
  706.      betyder yderligere inkludering af alle filer i alle under-direktorier.
  707.      Under-direktorier bes¢ges rekursivt i den rækkef¢lge de forefindes på
  708.      disken. Direktorie-stier forlænges i den rækkef¢lge som under-direktorier
  709.      genneml¢bes - med mindre option "E" aktiveres. Filer er bes¢gt to gange:
  710.      f¢rst under en indledende gennemgang - og senere når den faktiske
  711.      behandling af filerne finder sted. Den f¢rste gennemgang foretages for at
  712.      tillade en global %-færdig-indikator - og tillade st¢rrelses-beregning
  713.      for "solid" blokke (med flere indgange).
  714.  
  715. S option (ændre arkiv dato/tid til nyeste indgang i arkivet)
  716. ----------------------------------------------------------------
  717.      **Ikke implementeret**
  718.      Komprimering:
  719.      Der er tre praktiske muligheder for at sætte dato/tid mærkningen
  720.      svarende til nyeste fil:
  721.        * vælge den nyeste dato/tid iblandt indgangene tilf¢jet til et
  722.          opdateret arkiv
  723.        * vælge den nyeste dato/tid iblandt indgangene allerede i arkivet
  724.          - f¢r nye filer adderes
  725.        * vælge den nyeste dato/tid iblandt alle filer efter overstået
  726.          opdatering af arkivet
  727.      Men i den aktuelle implementation er kun den sidste mulighed
  728.      implementeret.
  729.  
  730.      En nem måde at sætte dato/tids mærkningen uden at addere filer er ved
  731.      "x1 lis test.x", hvilket bevirker listning (men ikke fremvisning)
  732.      af arkiv indholdet - og tillige opdatering af dato/tid mærkningen.
  733.  
  734. T option (sæt fil dato/tid mærkning i henhold til aktuelle tid)
  735. ----------------------------------------------------------------
  736.      **Ikke implementeret**
  737.      Komprimering:
  738.      Denne option sætter dato/tid for filer indsat i arkivet til den
  739.      aktuelle dato/tid. Den oprindelige dato/tid for filerne er ignoreret.
  740.  
  741.      Udpakning:
  742.      Mærk de udpakkede filer med den aktuelle dato/tid - snarere end den
  743.      der er gemt i arkivet.
  744.  
  745.      Note: alle filer i een proces vil blive påf¢rt den samme dato/tid. Selv
  746.      om filer behandles med nogle sekunders mellemrum, så vil de alle få
  747.      tiden svarende til da processen startede.
  748.  
  749. U option (solid komprimering mode)
  750. -----------------------------------
  751.      Komprimering:
  752.      Hvis kun een fil bliver komprimeret, så har denne option ingen effekt.
  753.      Men dersom mere end een fil komprimeres - så bliver de indsat i
  754.      "solid mode". Dermed komprimeres filerne som en sammenhængende
  755.      sekvens af data (svarende til sammenhægtning) - hvilket for beslægtede
  756.      filer burde betyde tættere komprimering.
  757.  
  758.      For optimal komprimering burde filerne grupperes intelligent, så de nærmest
  759.      beslægtede filer placeres nærmest hinanden. Men det er ikke automatisk
  760.      fors¢gt i den nuværende implementation.
  761.  
  762. V<st¢rrelse> option (multi-volume behandling)
  763. -----------------------------------
  764.      **Ikke implementeret**
  765.      Komprimering:
  766.      Hvis <st¢rrelse> ikke er angivet, så vil komprimering ske til et arkiv, der
  767.      er begrænset i ¢vre st¢rrelse af den disponible disk-plads. Efter hver
  768.      volume vil en prompt dukke op (med mindre option "Y" er aktiveret)
  769.      hvilket for et udskiftelig disk drev vil tillade indsættelse af en ny
  770.      disk. Når det tillades, så vil komprimeringen fortsætte med en anden
  771.      arkiv del. Hvis <st¢rrelse> er angivet, så foretages komprimering til et
  772.      (multi-volumen) arkiv begrænset i omfang af den angivne st¢rrelse. Under
  773.      alle omstændigheder vil slut-resultatet være en række af arkiver med
  774.      identiske navne - og varierende endelser x00,x01,. hvor x00 indeholder
  775.      de f¢rst komprimerede data. Det er ikke muligt at opdatere et multi-
  776.      volumen arkiv i multi-volumen mode. Men det er muligt at opdatere det med
  777.      almindelige fil-indgange - eller opdatere et simpelt ikke-volumen arkiv
  778.      i forlænget multi-volumen mode.
  779.  
  780.      Udpakning:
  781.      Her har angivne <st¢rrelse> ingen relevans. Udpakning skulle kun fors¢ges
  782.      for en fuldstændig sekvens af multi-volumen arkiver. Fors¢g på at udpakke
  783.      individuelle multi-volumen arkiver er mulig - men vil kun lykkes for
  784.      filer, der ikke fortsætter over flere volumener. Der ventes på hver ny
  785.      volumen, med mindre option "Y" er aktiveret.
  786.  
  787. W option (udpakning med smart overskrivning)
  788. ----------------------------------------
  789.      **Ikke implementeret**
  790.      Udpakning:
  791.      Denne option fors¢ger intelligent at l¢se problemer, hvor udpakkede
  792.      filer risikerer overskrivning af allerede eksisterende navne. Traditionelt
  793.      ville problemet blive l¢st ved at sp¢rge brugeren om overskrivning var
  794.      ¢nsket - og undlade at overskrive, hvis ikke det var tilfældet. Men en
  795.      tredje mulighed er at udpakke til ændrede navne. Nye endelser 00X,01X,..
  796.      (ikke at forveksle med egentlige .x arkiver) benyttes ved
  797.      kollisions-forhindret udpakning.
  798.  
  799. X option (ekskluder direktorie-sti(er) angivet på kommando-linien)
  800. ------------------------------------------------------
  801.      Komprimering:
  802.      Normalt vil alle direktorie-stier på kommando-linien blive
  803.      inkluderet i direktorie/filnavne (for filer adderet til arkivet).
  804.      Hvis et direktorie er angivet ved "x1 a test.x dir\*.*" så bliver
  805.      navne "dir\file1", "dir\file2",... gemt i arkivet. Option "X" forhindrer
  806.      standard registreringen af direktorie-navne på kommando-linien.
  807.      "x1 ax test.x dir\*.*" vil registrere fil indgange som "file1",
  808.      "file2",... Bemærk venligst, at optionen ikke har noget effekt på
  809.      direktorie-sti navne for filer, der findes under rekursiv s¢gning på
  810.      disken (option "R"). For at eliminere direktorie-stier i sådanne
  811.      tilfælde, så er option "E" påkrævet.
  812.  
  813.      Udpakning:
  814.      Her vil optionen ikke have nogen effekt - kun option "E" bruges til at
  815.      ekskludere direktorie-stien fra udpakkede filnavne.
  816.  
  817. Y option ("JA" antages ved alle foresp¢rgsler)
  818. -------------------------------------------
  819.      Udpakning:
  820.      Option "Y" er komplementær til option "N". Option "Y" bevirker at alle
  821.      eventuelle foresp¢rgsler bliver besvaret med et "JA". Dette vil modvirke
  822.      alle fors¢g på at stoppe processen og sp¢rge brugeren til råds. Det
  823.      ber¢rer hovedsageligt overskrivning af filer, oprettelse af direktorier,
  824.      etc.
  825.  
  826. Z<nummer> option (ekskluderer filer, der ellers vil være blevet arkiveret)
  827. ---------------------------------------------
  828.      Komprimering:
  829.      Når denne option ikke anvendes, så bliver alle filmasker på
  830.      kommando-linien brugt til at inkludere filer. Hvis optionen bruges,
  831.      så vil i mangel af angivet nummer anvendes værdien 1. Nummeret angiver,
  832.      hvor mange filmasker sidst på kommando-linien, som angiver ekskluderede
  833.      filer. Denne konvention tillader ikke fri sammenblanding af inkluderings-
  834.      og ekskluderings-masker. Alle(!) ekskluderings-masker skal angives samlet
  835.      - for enden af kommando-linien. I eksemplet
  836.      "x1 az3 test.x test1.* test2.* *.bak *.swp *.tmp" her efterf¢lges option
  837.      "Z" af værdien "3" hvilket angiver at de sidste 3 filmasker
  838.      "*.bak *.swp *.tmp" angiver filer, hvilke ikke(!) skal adderes til
  839.      arkivet. Nummeret tæller bagfra, fra enden af kommando-linien og er
  840.      derfor ikke påvirket af det forudgående antal inkluderings-masker.
  841.  
  842.      I tilfældet hvor ekskluderings-nummeret overstiger det samlede antal
  843.      filmasker på kommando-linien, så inkluderes som standard filerne "*.*"
  844.      - og alle specificerede filer ekskluderes.
  845.  
  846. 4.  Environment variable (sprog modulet)
  847. =========================================
  848.      På nuværende tidspunkt underst¢ttes kun een environment variabel. Dette
  849.      er "COUNTRY", som bruges til sprog/karaktersæt udvælgelse.
  850.  
  851.      I DOS bruges environment variablen COUNTRY til at angive det aktuelle
  852.      land og karaktersæt. Specielle sprog-afhængige tegn er underst¢ttet i
  853.      det ¢vre ASCII karaktersæt (afsæt 128 til 255) - og kan variere med
  854.      konfigurationen. Afhængig af karaktersættet, så kan sprog-afhængige
  855.      karakterer forekomme på forskellige afsæt i den udvidede ASCII
  856.      karakter-tabel - hvis de overhoved underst¢ttes. Når sådanne karakterer
  857.      beh¢ves, så er det n¢dvendigt f¢rst at identificere karakter-sættet.
  858.  
  859.      For eksempel kan konfigurationen for et amerikansk tastatur være:
  860.                           COUNTRY=001,437
  861.      "001" angiver (amerikansk/engelsk) sprog, mens "437" specificerer
  862.      codepage 437 (US karakter-sæt). Konsulter en DOS manual for en
  863.      detaljeret liste af numre og deres betydning. For dette arkiv program
  864.      vil "001" bevirke, at beskeder vises i engelsk. "437" medf¢rer, at mulige
  865.      udvidede karakterer s¢ges på ASCII afsæt svarende til IBM codepage 850.
  866.  
  867.      Dersom environment variablen COUNTRY foretrækkes ikke anvendt - så kan
  868.      den anden variabel LANGUAGE bruges i stedet. Samme syntaks er påkrævet.
  869.  
  870.      Bemærk, at hvis en sætning ikke forefindes i det pågældende sprog, så
  871.      vil den originale engelske besked vises (i mangel af bedre valg).
  872.  
  873.      Andre environment variable underst¢ttes ikke på nuværende tidspunkt.
  874.  
  875. 5. Formater og komprimerings metoder (bruger niveau)
  876. ==============================================
  877.  
  878. F¢rst en oversigt over underst¢ttede arkiv formater og metoder.
  879.  
  880. "x1" arkiv program svarende til version 0.94a ("+" angiver underst¢ttelse og
  881. "-" angiver manglende sådan):
  882. ------------------------------------------------------------------------------
  883.     arkiver    klarer at liste indhold
  884.     name       |   klarer at udpakke
  885.                |   |   klarer at pakke
  886.                |   |   |   komprimerings metoder underst¢ttet
  887.                |   |   |   |      dekomprimerings metoder underst¢ttet
  888.                |   |   |   |      |          kommentarer
  889.                |   |   |   |      |          |
  890.     arj        +   +   +   0,1    0,1,2,3,4  1,..,4 er basalt set identiske
  891.     zip        +   +   +   0,1,8  0,1,7,8    1:shrink,7:implode,8:deflate
  892.     lzh/lha    +   +   +   0,5    0,1,5      ej AMIGA-LHA support (ej Amiga!)
  893.     zoo        +   +   +   0,2    0,2
  894.     ha         +   +   +   0,1,2  0,1,2
  895.     tar        +   -   -   -      -
  896.     tgz        +   +   +   8      8          kræver gzip'ed TAR headers
  897.     rar        +   -  (+)  0      0
  898.     arc        +   -   -   -      -
  899.     pak        +   -   -   -      -
  900.     sqz        +   -  (+)  0      0
  901.     arx        +   -  (+)  0      0,1 (5)    algoritmer som LHA1.13
  902.     put        +   +   +   0,5    0,5        algoritmer som LHA2.x
  903.     x          +   +   +   0,1,.. 0,1,..
  904. ------------------------------------------------------------------------------
  905. (+) indikerer at der ikke er meget sjov ved lagring uden komprimering..
  906.  
  907. Om ARJ modulet:
  908. ---------------------
  909.      Et eksempel, hvor der komprimeres til ARJ formatet kunne være:
  910.                            "x1 a test.arj *.*"
  911.      Dette vil bevirke komprimering af alle filer i det aktuelle direktorie
  912.      til arkivet "test.arj" (som standart med metoden 1).
  913.      Lagring uden komprimering: "x1 am0 test.arj *.*"
  914.      Bemærk venligst, at ARJ multi-volumen (endnu) ikke underst¢ttes.
  915.  
  916. Om ZIP modulet:
  917. ---------------
  918.      Et eksempel, hvor der komprimeres til ZIP formatet kunne være:
  919.                            "x1 a test.zip *.*"
  920.      Dette vil bevirke komprimering af alle filer - som standard med ZIP
  921.      "deflate" metoden kendt fra ZIP versioner 2.x. Hvis bagud kompatibilitet
  922.      er påkrævet, så er det også muligt at komprimere med en ældre metode:
  923.                            "x1 am1 test.zip *.*"
  924.      Dermed anvendes metoden "shrink" fra ZIP versioner 0.9 og 1.1. Denne
  925.      gamle metode er ikke tiltænkt seri¢s brug. Den stammer tilbage fra mine
  926.      f¢rste ydmyge fors¢g med ZIP formatet i 1991...
  927.      Kontrol af arkiv fejlfrihed (efter komprimering) udf¢res med:
  928.                     "x1 t test.x"   eller   "x1 t test.x *.*"
  929.  
  930. Om LHA modulet:
  931. ---------------
  932.      Et eksempel med komprimering til LHA formatet kunne være:
  933.             "x1 a test.lha *.*"   eller   "x1 a test.lzh *.*"
  934.      Endelserne ".lha" og ".lzh" er underst¢ttet på lige fod (begge fanget
  935.      ved visning af arkiver "x1 l *"). I mangel af anden angivelse, så bruges
  936.      metode 5 som standard.
  937.  
  938. Om ZOO modulet:
  939. ---------------
  940.      Et eksempel, der komprimerer til ZOO formatet ville være:
  941.                            "x1 a test.zoo *.*"
  942.      ADVARSEL: ZOO formatet specificerer to header typer og kun een er for
  943.      nuværende underst¢ttet af arkiv programmet (den dominerende type 2).
  944.      Dette kan skabe problemer, når dette arkiv program opdaterer gamle
  945.      zoo-skabte arkiver (header type 1?). Måske er jeg for forsigtig - umuligt
  946.      at sige...
  947.  
  948. Om HA modulet:
  949. ---------------
  950.      Et eksempel, der komprimerer til HA format kunne være:
  951.                            "x1 a test.ha *.*"
  952.      Dette vil bevirke komprimering af alle filer (i mangel af anden angivelse
  953.      med metode 1:ASC). Dersom hårdere komprimering er påkrævet med en 4-ordens
  954.      PPM, så kunne mere passende anvendes (HSC):
  955.                               "x1 am2 test.ha *.*"
  956.      Overladning af valget til computeren, at automatisk udvælge bedste
  957.      komprimering, opnås med: "x1 am# test.ha *.*"
  958.  
  959. Om TGZ modulet:
  960. ---------------
  961.      Et eksempel i komprimering til TAR+GZIP format kunne være:
  962.                            "x1 a test.tgz *.*"
  963.      Dette medf¢rer indpakning af alle filer i TAR header format og
  964.      efterf¢lgende komprimering i GZIP format. På platforme med underst¢ttelse
  965.      af lange filnavne, her bruges normalt den mere passende endelse ".tar.gz".
  966.      Når indholdet af et sådant arkiv skal listes, så er fuld dekomprimering
  967.      (til hukommelse) n¢dvendig - så lidt ekstra tålmodighed kan være påkrævet.
  968.                            "x1 l test.x"
  969.      For nuværende er det ikke muligt at udpakke indholdet af en GZIP fil
  970.      til en enkelt fil.
  971.  
  972. Om X modulet:
  973. --------------
  974.      En ting, der ikke er direkte forbundet med nogen kompressions metode - men
  975.      adskiller X header formatet fra andre arkiv programmer - er dobbelt-CRC
  976.      registrering (mulighed for hurtig CRC kontrol). CRC udregnes for både
  977.      ukomprimerede og komprimerede data. Når der kun ¢nskes kontrol for
  978.      transmissions fejl, så vil kontrol af sidstnævnte CRC være tilstrækkelig.
  979.  
  980.      Fordi st¢rrelsen af komprimerede data normalt er mindre end den
  981.      oprindelige st¢rrelse - så vil der normalt være forsvindende ekstra
  982.      arbejde forbudet med CRC-beregning for komprimerede data. Det sl¢ver ikke
  983.      processen i nævneværdig grad.
  984.  
  985.      Bemærk yderligere, at .x arkiver kan indeholde mere end een fil med præcis
  986.      samme direktorie-sti og navn. Dette kan ikke undgås, når "solid" indgange
  987.      er involveret. Hvis det "solide" medlem af arkivet med de(n) overfl¢dige
  988.      fil(er) slettes - så kan andre filer ryge med i k¢bet (komprimeret
  989.      sammen) - hvilket vil medf¢re tabte data. Dette problem kunne l¢ses ved
  990.      at "lade som om" at identiske filnavne ikke er til stede (som i UC2
  991.      eller HAPACK). Men set synes fornuftigt, når nu filer egentlig er til
  992.      stede, at brugeren skal se dem... En beslutning!
  993.  
  994.      Metode nummer Navn Paknings eksempel   Kommentarer
  995.      ------------- ---- ------------------- --------
  996.            1       XLZ  "x1 am1 test.x *.*" 64k vindue LZ77
  997.           (2)       -
  998.           (3)       -
  999.            4       XXC  "x1 am4 test.x *.*" Variabel hukommelses-valg mulig
  1000.                                             kræver DOS mem. (1Mb)
  1001.           (5)      LZP  "x1 am5 test.x *.*"
  1002.      bedste metode  -   "x1 am# test.x *.*"
  1003.      ------------- --- --------------------
  1004.      NOTE: "bedste metode" vil f¢rst fors¢ge metode 4, herefter 1. Den endelige
  1005.      accepterede vil være den der tilbyder tættest resultat.
  1006.  
  1007.      ADVARSEL: metode 5 er for nuværende mål for yderligere arbejde... Forvent
  1008.      ingen bagud/forud kompatibilitet her!!!!
  1009.  
  1010.      X modulet underst¢tter "solid" format. Et eksempel i komprimering med
  1011.      "solid" format kunne være:  "x1 aum1 test.x *.*"
  1012.      Et arkiv kan indeholde flere uafhængige "solid" indgange - frit blandet
  1013.      med normale individuelt komprimerede indgange. Når en "solid" indgang
  1014.      f¢rst er dannet, så kan den ikke opdateres.
  1015.      Kontrol af arkiv programmets evne til at udpakke sin egne pakkede filer:
  1016.                            "x1 t test.x *.*"
  1017.      Kontrol for påf¢rte transmissions fejl:
  1018.                            "x1 tf test.x *.*"
  1019.      Ja, det giver option "F" (tving filer ind/ud af arkiv) en anden mening
  1020.      (hurtigere CRC check), når filer testes. Men dette begrænser ikke brugen
  1021.      af optionen i dennes oprindelige sammenhæng, fordi det ikke har nogen
  1022.      mening at "tvinge" filer ud af et arkiv under en test.
  1023.  
  1024.      Fors¢g på at "TF" teste andre arkiv formater, som ikke underst¢tter denne
  1025.      måde, vil blot resultere i en normal CRC test.
  1026.  
  1027.      En kort kommentar til metode 4:
  1028.      Den virker med option "L" (komprimerings niveau) på den måde at:
  1029.                            "x1 am4l2 test.x *.*"
  1030.      ...betyder komprimering på niveau 2 (7 Mb).
  1031.              Niveau Hukommelse Kommentar
  1032.                   0     640kb  hukommelses manager kan kræve min. 1Mb
  1033.                   1       3Mb  -
  1034.                   2       7Mb  -
  1035.                   3      16Mb  kunne ikke testes - ingen 16Mb RAM
  1036.      Vær opmærksom på at metoden kan ændres!
  1037.  
  1038. 6. Midlertidige fil navne
  1039. =========================
  1040. Under komprimering, så bruger programmet en temporær fil "X???????.SWP"
  1041. (hvor ??..?? er valgt tilfældige). Den indeholder det nye arkiv under
  1042. konstruktion. Hvis hele operationen slutter vellykket, så omd¢bes filen til
  1043. det ¢nskede navn.
  1044.  
  1045. Under dekomprimering, så kan en udpakket fil ¢nskes udlagt til samme navn som
  1046. selve arkivet. I det tilfælde, så er det originale arkiv midlertidigt omd¢bt
  1047. til et neutralt navn (X???????.SWP) - og slettet, når alle filer er udpakket.
  1048.  
  1049. På intet tidspunkt er mere end 3 filer åbne (når filer komprimeres til allerede
  1050. eksisterende arkiv). Programmet vil maksimalt bruge een temporær fil - og kun
  1051. eet navn for det (X???????.SWP).
  1052.  
  1053. Endelsen kan virke en smule misvisende. Den temporære fil er ikke en swapfil.
  1054. Til slut bliver filen omd¢bt - indholdet bliver ikke kopieret andetsteds.
  1055. Men filnavn endelsen skulle gerne give associationer til andre programmer
  1056. (Borland compilers..), hvilket skulle bevirke mindre t¢ven, hvis brugeren
  1057. overvejer at slette en fil.
  1058.  
  1059. Fordi egentlige swapfiler ikke er n¢dvendige, så underst¢ttes ikke specielle
  1060. arbejds-direktorier. For optimal hastighed, så b¢r komprimerings-processen tage
  1061. plads på en RAM-disk - og de(n) resulterende fil(er) efterf¢lgende kopieres
  1062. til det ¢nskede ende-mål.
  1063.  
  1064.  
  1065. 7. Slut retur værdier
  1066. ====================
  1067.  
  1068. Intern reference   Værdi  Kommentar
  1069. ------------------ ----- -----------------------------
  1070.  EXIT_OK             0     Ingen fejl
  1071.  EXIT_INT_ERR        1     Intern fejl (?)
  1072.  EXIT_NO_MEM         2     L¢bet t¢r for hukommelse
  1073.  EXIT_NO_DISK        3     L¢bet t¢r for disk plads
  1074.  EXIT_NO_OPEN        4     Kan ikke åbne arkiv file
  1075.  EXIT_NO_TMP         5     Kan ikke åbne temporær fil
  1076.  EXIT_NO_FOUND       6     Kan ikke finde matchende arkiv(er)
  1077.  EXIT_NO_PATH        7     Kan ikke finde direktorie-sti
  1078.  EXIT_NO_BASE        8     Kan ikke få adgang til basis direktoriet
  1079.  EXIT_NO_MKDIR       9     Formår ikke at oprette direktorie
  1080.  EXIT_BREAK          10    Bruger afbrydelse
  1081.  EXIT_FILE_ERR       11    Ukendt fil fejl - kan ikke læse fra fil
  1082.  EXIT_BAD_HDR        12    Arkiv direktorie (delvis) korrupt
  1083.  EXIT_BAD_EXT        13    Indholdet af arkivet svarer ikke til endelsen
  1084.  EXIT_BAD_ARC        14    Er det overhovedet taget et arkiv?
  1085.  EXIT_LONG_NO        15    Ej support af lang arg.format - eller for mange arg.
  1086.  EXIT_LONG_PATH      16    Direktorie-sti for lang
  1087.  EXIT_NO_OVERRIDE    17    Kan ikke tilsidesætte basis direktorie
  1088.  EXIT_NEST           18    Direktorier i for mange niveauer
  1089.  EXIT_SCRIPT_ERR     19    Fejl i script fil
  1090.  EXIT_NOTHING        20    Ingenting at lave
  1091.  EXIT_UNSP           21    Metode ikke underst¢ttet i denne version..
  1092.  EXIT_COM            22    Ukendt kommando
  1093.  EXIT_OPT            23    Ukendt option
  1094.  EXIT_OPT_DIR        24    Ukendt option
  1095.  EXIT_OPT_WR         25    Ukendt option
  1096.  EXIT_OPT_VIEW       26    Ukendt option
  1097.  EXIT_WC_FORM        27    Upassende brug af wildcards
  1098.  EXIT_WC_NAME        28    Upassende brug af wildcards
  1099.  EXIT_WC_COMPL       29    Upassende brug af wildcards
  1100.  EXIT_CHG_WRPROT     30    Fejlet fors¢g på at ændre (skrive-beskyttet) arkiv
  1101.  EXIT_CHG_DEL        31    Fejlet fors¢g på at ændre (slettet) arkiv
  1102.  EXIT_CHG_UNI        32    Fejlet fors¢g på at ændre (blok komprimeret) arkiv
  1103.  EXIT_CHG_MULTI      33    Fejlet fors¢g på at ændre (multi-volume) arkiv
  1104.  EXIT_CHG_CR         34    Fejlet fors¢g på at ændre (krypteret) arkiv
  1105.  EXIT_CHG_UNCR       35    Fejlet fors¢g på at ændre (ukrypteret) arkiv
  1106.  EXIT_BAD_KEYFILE    36    Fejlagtig n¢gle-fil (kryptering)
  1107.  EXIT_PASS_NO        37    Ikke gyldigt (bruger)ID (kryptering)
  1108.  EXIT_PASS_DIFF      38    Password kontrol fejlede (kryptering)
  1109.  EXIT_SECURITY       39    General secur/encryp fejl (kryptering)
  1110.  EXIT_NOCRYPT        40    Kan ej håndtere encryp.arkiv (kryptering)
  1111.  
  1112. ------------------------------------------------------------------------------
  1113.  
  1114. Stig Valentini, x1develop@internet.dk (indtil marts 1997)
  1115.  
  1116. ------------------------------------------------------------------------------
  1117.