home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 35 Internet / 35-Internet.zip / plcode1o.zip / plcode10.doc < prev   
Text File  |  1996-12-16  |  15KB  |  301 lines

  1. ────────────────────────────────────────────────────────────────────────────-
  2.  
  3.  
  4.    ▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒ ▒▒      ▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒ ▒▒▒▒▒▒   ▒▒▒▒▒▒▒(TM) ▒▒ ▒▒▒▒▒▒▒
  5.    ▒▒   ▒▒ ▒▒   ▒▒ ▒▒      ▒▒      ▒▒   ▒▒ ▒▒  ▒▒▒  ▒▒         ▒▒       ▒▒
  6.    ▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒ ▒▒      ▒▒      ▒▒   ▒▒ ▒▒   ▒▒  ▒▒▒▒▒     ▒▒   ▒▒▒▒▒▒▒
  7.    ▒▒      ▒▒   ▒▒ ▒▒      ▒▒      ▒▒   ▒▒ ▒▒  ▒▒▒  ▒▒       ▒▒    ▒▒
  8.    ▒▒      ▒▒   ▒▒ ▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒ ▒▒▒▒▒▒   ▒▒▒▒▒▒▒ ▒▒     ▒▒▒▒▒▒▒
  9.  
  10.       T H E   F R I E N D L Y   U U E N C O D E R / U U D E C O D E R
  11.  
  12.                         (c)1996 Gian Maria Romanato
  13.                                     aka
  14.                            BitMan / Kernel Panic
  15. ─────────────────────────────────────────────────────────────────────────────
  16.  ▒▒ 0. Index ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  17. ────────────────────────────────────────────────────────────────────────────-
  18.    0. This Index
  19.    1. Legal Stuff
  20.    2. What it does ?
  21.    3. Did the world really need yet another UUENCODER ?
  22.    4. Why this weird name for a UUENCODER/UUDECODER ?
  23.    5. Installation
  24.    6. Instructions
  25.    7. Tech Notes
  26.    8. Thanks & Greetings
  27.    9. Contacting The Author
  28.  
  29. ─────────────────────────────────────────────────────────────────────────────
  30.  ▒▒ 1. Legal Stuff ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  31. ────────────────────────────────────────────────────────────────────────────-
  32.  Palcode is copyright 1996 by Gian Maria Romanato.
  33.  
  34.  You may distribute this software to everyone in its unmodified form, upload
  35.  it to bbs'es, internet ftp sites etc. etc., but you can not sell it.
  36.  
  37.  Palcode is CARDWARE , that is if you like this program and use it, you
  38.  MUST send me a POSTCARD (see section 9). If you really can't afford a
  39.  postcard (?) an e-mail is also welcome, but I'd really like you to mail me
  40.  a postcard.
  41.  
  42.  I provide you this software on an "as is" basis which means that I give
  43.  you no warranty at all, and that I can not be held responsible for damage
  44.  caused to your software or hardware by Palcode.
  45.  If you decide to run Palcode on your PC, you do it at your own risk.
  46.  
  47.  All trademarks reported in this document are copyright by their respective
  48.  owners.
  49.  
  50. ─────────────────────────────────────────────────────────────────────────────
  51.  ▒▒ 2. What it does ? ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  52. ────────────────────────────────────────────────────────────────────────────-
  53.  Palcode is a command line UUENCODER/UUDECODER.
  54.  Palcode is available for both OS/2 (Yeah!) and MS-DOS (bleah!).
  55.  
  56.  Palcode was designed and programmed with the purpose of making it
  57.  easy for the user to uudecode (and also uuencode) any file.
  58.  Palcode is able to correctly decode encoded files containing empty
  59.  lines and almost any kind of garbage!
  60.  Unluckily, a remote possibility of an error occurance remains , because if
  61.  the garbage amongst the encoded lines is made of characters which respect the
  62.  uuencoding rules, Palcode will not be able to distinguish those garbage
  63.  lines from the real uuencoded ones.
  64.  
  65. ─────────────────────────────────────────────────────────────────────────────
  66.  ▒▒ 3. Did the world really need yet another UUENCODER ? ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  67. ────────────────────────────────────────────────────────────────────────────-
  68.  Well, in my opinion the answer is YES :-)
  69.  I wrote this program for my own need: I was not able to find a command-line
  70.  uuencoder/uudecoder for OS/2 able to encode in multiple parts of a chosen
  71.  size and also able to decode almost every encoded file without the need for
  72.  the user to edit the original encoded ASCII file.
  73.  
  74. ─────────────────────────────────────────────────────────────────────────────
  75.  ▒▒ 4. Why this weird name for a UUENCODER/UUDECODER ? ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  76. ────────────────────────────────────────────────────────────────────────────-
  77.  The original idea for this program comes from a FIDO echomail area local
  78.  to the BBS I am a point of. (Hobbiville 2:333/329).
  79.  The name of that area is PALCO, and one of the guys who writes
  80.  crap there,(yo Alessio, are you reading ?? :-)) is a proud owner of a
  81.  Commodore Amiga. Despite the immense (?) power of his machine, he did not
  82.  manage to find an encoder able to encode a large file in multiple sections,
  83.  so he used to split the file before encoding and then he encode each
  84.  splitted part.
  85.  The result was a bunch of encoded bytes that no one was able to decode
  86.  withouth having to edit the encoded file with a text editor.
  87.  That's why Palcode was born, and that's why it supports the
  88.  FORCED DECODING (-f switch, see section 6)
  89.  
  90. ─────────────────────────────────────────────────────────────────────────────
  91.  ▒▒ 5. Installation ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  92. ────────────────────────────────────────────────────────────────────────────-
  93.  *OS/2 Version*
  94.  Unzip the file Plcode?o.zip (but I guess you already did it :-)).
  95.  Copy PALCODE.EXE in a directory listed in your PATH environment variable.
  96.  
  97.  *DOS Version*
  98.  Unzip the file Plcode?d.zip (but I guess you already did it :-)).
  99.  Copy PALCODE.EXE in a directory listed in your PATH environment variable.
  100.  
  101.  Now you can execute PALCODE from every directory of your hard drive.
  102.  
  103. ─────────────────────────────────────────────────────────────────────────────
  104.  ▒▒ 6. Instructions ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  105. ────────────────────────────────────────────────────────────────────────────-
  106.  If you type PALCODE.EXE with no parameters the help message will be
  107.  displayed , and it will look like this:
  108.  
  109.       ┌───── PalCode/2 v1.0b6 (c)1996 G.M.Romanato ─────┐
  110.       └─────── The Friendly Uuencoder/Uudecoder! ───────┘
  111.       Usage:  PALCODE [options] input.ext [output.[ext]]
  112.       Options are :
  113.          -e|d     Encode/Decode (default is DECODE)
  114.          -c       Encode with line checksum
  115.          -k SIZE  Encode in multiple parts of SIZE Kb
  116.          -l NUM   Encode in multiple parts of NUM lines
  117.          -0       Encode multiple parts with name file00.uue
  118.                   rather than file.000 which is default
  119.          -i COL   Decode ignoring first COL columns
  120.          -n       Disable line cheksum for decoding
  121.          -f       Forced decoding. See docs for further details
  122.  
  123.  - You can chose between uuencoding/uudecoding with switch -e or -d
  124.    (Default is decoding, -d)
  125.  
  126.  *DECODING*
  127.  - If you chose to decode a file you only have to specify the input name
  128.    because the destination file name is included in the header of the
  129.    encoded file.
  130.  
  131.  - If you want to decode a multi-part encoded file you have to copy all
  132.    encoded parts (in the right order) in a unique file and run PALCODE
  133.    on that file.
  134.  
  135.  - The -i COL option tells Palcode to decode ignoring the first COL
  136.    columns of each line. This option is useful when the encoded lines
  137.    are indented and do not start from the first column.
  138.    For example suppose that I encode a messagge in a fidonet echomail area
  139.    and that someone quote-replies to me.
  140.    The quoted message will look like this:
  141.  
  142.    GMR> Section 1/1 of "plcode10.doc" uuencoded by PalCode/2 v1.0b6 (c)96 G.M.Romanato
  143.    GMR> begin 644 plcode10.doc
  144.    GMR> MQ,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$
  145.    |||||
  146.    12345
  147.  
  148.    Normally , if you wanted to decode this file you would have to edit the
  149.    messagge and remove the "GMR> " string from the beginning of each line.
  150.    But if you use Palcode you can simply specify the -i 5 option and
  151.    Palcode will correctly decode the file.
  152.  
  153.    The idea for this function comes from the one and only Giovanni Iachello.
  154.  
  155.  - Palcode was designed and programmed with the purpose of making it
  156.    easy for the user to uudecode (and also uuencode) any file.
  157.    Palcode is able to correctly decode encoded files containing empty
  158.    lines and almost any kind of garbage!
  159.    Unluckily, a remote possibility of an error occurance remains , because if
  160.    the garbage amongst the encoded lines is made of characters which respect
  161.    the uuencoding rules, Palcode will not be able to distinguish those
  162.    garbage lines from the real uuencoded ones.
  163.  
  164.  - Palcode properly decodes also files containing more than one encoded
  165.    file.
  166.  
  167.  *FORCED DECODING*
  168.  - You probably won't need to use this feature: it has been added for own
  169.    need (see section 4).
  170.    This switch tells Palcode to ignore all "begin" (but the first one) and
  171.    all "end" statements contained in the encoded file, and treat all the
  172.    encoded files found as parts of a unique file.
  173.    This switch also disables file Checksum.
  174.  
  175.  *ENCODING*
  176.  - If you want to encode a file called FILE.EXT in a single encoded file
  177.    just type: PALCODE -e FILE.EXT
  178.    and Palcode will output FILE.UUE, unless you specify a different
  179.    destination name as third parameter.
  180.  
  181.  - If you want to encode a file called FILE.EXT in multiple parts
  182.    you have the chance to chose the size of the parts by specifying the
  183.    number of LINES or the number of KBYTES per part :
  184.  
  185.      PALCODE -e -l 200 FILE.EXT
  186.         will encode FILE.EXT into multiple sections of 200 encoded lines
  187.         each, whose names will be FILE.000, FILE.001, FILE.002...
  188.  
  189.      PALCODE -e -k 16 FILE.EXT
  190.         will encode FILE.EXT into multiple sections of 16 KBYTES each,
  191.         whose names will be FILE.000, FILE.001, FILE.002...
  192.  
  193.      Note that since an encoded line has a fixed length, it is not possible
  194.      to obtain sections whose dimension is exactly a specified number of
  195.      Kbytes. When you specify "-k 16" Palcode will produce sections whose
  196.      size is very close to 16 Kbytes, but a little bit smaller.
  197.      (1 Kbyte=1024 bytes).
  198.  
  199.  -    If you don't like the way Palcode calls the encoded sections, i.e.
  200.       FILE.000 , you can add to the command line the switch
  201.       -0 and Palcode will produce FILE00.UUE instead.
  202.       For Os/2 users: this switch also forces the length of the encoded
  203.       file name to the usual FAT's 8+3 format.
  204.  
  205.  *CRC CHECKSUMS*
  206.  - If you want to add a CRC CHECKSUM on each line of your encoded file
  207.    you must run PALCODE with the -c parameter.
  208.    This option is normally turned off (i.e. there is no LINE CRC as default)
  209.    because the evolution of the software and hardware used in delivering
  210.    mail packets removed almost every chance of errors during transfering.
  211.    Palcode puts, as default, only a global CRC on the entire file at its
  212.    end , which is useful when decoding multi-parts (because if the CRC is
  213.    right you are sure you did not miss any part).
  214.    Most recent encoders/decoders do not use any CRC checksum.
  215.    Since there is no real standard about the entire file checksum,
  216.    Palcode uses its own convention and writes (at the end of the file,
  217.    one line after "end") "size filechecksum/filesize" where filechecksum
  218.    and filesize are numbers.
  219.    For the same reason Palcode is able to read/understand file checksums
  220.    only if the file was encoded with Palcode or the remote encoder uses
  221.    a convention equal to Palcode's one.
  222.    Whenever Palcode can't understand/read/find the file checksum, it will
  223.    tell the user which value the file checksum should be, to give the user
  224.    the chance to have a look at the encoded file and compare the values.
  225.  
  226.  - Some encoders use non standard line checksums algorithms.
  227.    If Palcode tries to decode a file encoded by such a program, it will
  228.    warn you every decoded line about a wrong CRC Checksum.
  229.    If this occurs, you can tell Palcode to avoid checking checksums at end
  230.    of line, by specifying the -n parameter.
  231.  
  232. ─────────────────────────────────────────────────────────────────────────────
  233.  ▒▒ 7. Tech Notes ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  234. ────────────────────────────────────────────────────────────────────────────-
  235.  Palcode is written in C.
  236.  Both the OS/2 and MS-DOS versions are 32 bit applications.
  237.  
  238.  The OS/2 version was compiled with EMX 09c, the GNU C++ compiler for OS/2
  239.  by Eberhard Mattes.
  240.  
  241.  The MS-DOS version was compiled with DJGPP v2.0 , the GNU C++ compiler
  242.  for MS-DOS by DJ Delorie.
  243.  The MS-DOS version was also packed with DJP.EXE by ML and uses
  244.  PMODE/DJ v1.1, the famous PMODE v3.07 by Tran and Daredevil, ported to
  245.  DJGPP by Matthias Grimrath.
  246.  
  247.  My PC is a i486dx2 80Mhz with 12 Mbyte of RAM, 540 MB IBM HD, ET4000w32p,
  248.  Gravis Ultrasound and a Mitsumi Fx400 CD-ROM drive.
  249.  
  250. ─────────────────────────────────────────────────────────────────────────────
  251.  ▒▒ 8. Thanks & Greetings ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  252. ────────────────────────────────────────────────────────────────────────────-
  253.  My greetings go to all my friends, all C64 sceners, the whole Kernel Panic
  254.  members, all Fidonet people and all OS/2 users around the world.
  255.  
  256.  Special greetings go also to all Palco's Boys and Alessio Veronese.
  257.  
  258.  Remeber: Giovanni Iachello does not know the 3 rules of the dynamic
  259.           programming :-)
  260.  
  261.  I want to thank:
  262.   - Giovanni Iachello for helping me whenever I have troubles with C :-)
  263.   - Eberhard Mattes for that piece of cake of EMX and the new PMGDB.
  264.   - DJ Delorie for DJGPP.
  265.   - Tran , Daredevil and Matthias Grimrath for PMODE/DJ.
  266.   - the Italian Fidonet area PRG.ITA for the informations about the
  267.     uuencoding standard (especially Roberto Favaretti for the faqs).
  268.   - The betatesters (in alphabetical order):
  269.  
  270.          Emanuele Bonin    (aka Sam Gamgee)
  271.          Dario De Agostini (aka VOiD / Kernel Panic)
  272.          Paolo Di Patria   (aka Silent Scout / Kernel Panic)
  273.          Enrico Ferro      (aka Pinco / Kernel Panic)
  274.          Giovanni Iachello (aka Giac)
  275.          Antonio Manara    (aka The Toy)
  276.  
  277. ─────────────────────────────────────────────────────────────────────────────
  278.  ▒▒ 9. Contacting The Author ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  279. ────────────────────────────────────────────────────────────────────────────-
  280.  My name is Gian Maria Romanato and I live in Padua, Italy.
  281.  As of now I am a student of software engineering at University Of Padua.
  282.  
  283.  If you want to tell me about a bug you found in Palcode, please remember
  284.  to specify if you are using the OS/2 or the MS-DOS version.
  285.  
  286.  You can reach me at:
  287.  
  288.      Internet  :  domin@dei.unipd.it
  289.      Fidonet   :  2:333/329.31
  290.      Snail Mail:  Gian Maria Romanato       <─────────────────┐
  291.                   via Navagero 8                              │
  292.                   35126 Padova                                │
  293.                   Italy                                       │
  294.      Telephone :  +39-49-851043                               │
  295.                                                               │
  296.                   Remember to mail me the postcard :-) ───────┘
  297.  
  298.  
  299. ────────────────────────────────────────────────────────────────────────────-
  300.  
  301.