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