home *** CD-ROM | disk | FTP | other *** search
/ back2roots/padua / padua.7z / padua / misc / msplit.lha / msplit.doc < prev    next >
Text File  |  1994-02-10  |  9KB  |  234 lines

  1.  
  2.  
  3.  
  4.  
  5.              msplit  --  Version 1.3 -- last change Feb 10, 1994
  6.  
  7.                       Copyright (c) by Rene Tschirley
  8.  
  9.                             All rights reserved
  10.  
  11.  
  12.  
  13.   This program is no Public Domain but Freeware.
  14.  
  15.   Permission is granted to make and  distribute  verbatim  copies  of  this
  16. program's code and documentation as you receive it, in any medium, provided
  17. that  you  conspicuously  and  appropriately  publish  only  the  original,
  18. unmodified programcode and documentation,  with  all copyright  notices  of 
  19. warranty  intact.  The  executables  must not  be spread  alltogether,  but
  20. include source and doumentation! You may change the code for your own usage
  21. on other systems than the  systems this  program was  designed for (look at
  22. 'Splecial abilities').
  23.  
  24.   There is no warranty for this software package. Although the  author  has
  25. tried to prevent errors, he  can't  guarantee  that  the  software  package
  26. described in this document is 100% reliable. You are therefore  using  this
  27. material at your own risk. The author cannot be made  responsible  for  any
  28. damage which is caused by using this software package.
  29.  
  30.  
  31.  
  32.  
  33.                              What is ssplit?
  34.                             -----------------
  35.  
  36.   This program was designed for people who need computers at their work and
  37. sometimes use to take some code home.  I often have the problem that I need
  38. to carry packages of several megabytes from one system like  SUN-OS, VMS or
  39. MS-DOS  home to my  Amiga and reverse.  These  packages can't be put on one
  40. disk because of their size, so they have to be split into parts. Some other
  41. programs are able to do this too, but they only exist on special systems.
  42. This program is runable on every system!
  43.   msplit might be useful if you want to backup some files to a disk without
  44. using a backup utility.  It makes you able to use the whole capacity of the
  45. disk by packing the files together and  splitting it into parts of the size
  46. of your disks...
  47.  
  48.  
  49.  
  50.                              Included files
  51.                             ----------------
  52.  
  53.         msplit.readme   -   short readme, outside of lharc-packet
  54.         msplit.doc      -   this important file 8)
  55.         msplit.c        -   full ANSI-C sourcecode
  56.         msplit.amiga    -   executable for Amiga
  57.         msplit.sparc    -   executable for Sun Sparc processors
  58.         msplit.msdos    -   executable for MS-DOS
  59.         msplit.vax      -   executable for Vax-VMS
  60.         msplit.convex   -   executable for Convex
  61.         msplit.archie   -   executable for Acorn Archimedes
  62.         msplit.dec      -   executable for DEC-Stations under ULTRIX
  63.  
  64.  
  65.  
  66.  
  67.                      Notes for the different systems
  68.                     ---------------------------------
  69.  
  70.     AMIGA       Compiled with Manx Aztec-C 5.0 under Kickstart 2.04. Should
  71.                 be runable with Kick 1.2 or higher.
  72.  
  73.     SUN SPARC   Compiled with gcc on a Sun SS 630-MP under UNIX X.X. Tested
  74.                 on Sun Sparc 1, 2 and 10 under Sun-OS BSD-4.3 and Solaris.
  75.  
  76.     MSDOS       Compiled with Borland C++ in 80286 mode. For OS/2 or things
  77.                 like that, recompile the sourcecode.  Please have a look at
  78.                 'Special abilities/Bugs' for important notes!
  79.  
  80.     VAX         Compiled with gcc with usage of the Shared C Library for a
  81.                 compact executable. Tested on VAX 8800, VAX 770, 
  82.                 VAX-Station 3100 and 2000, all under VMS.
  83.  
  84.     CONVEX      Compiled with cc under Convex-OS 10.1 on a Convex.
  85.  
  86.     DEC         Compiled with gcc under ULTRIX 4.2 on a DEC-Station 3000.
  87.  
  88.     ARM         Compiled with gcc on an Acorn Archimedes 5000. Should be
  89.                 runable on any Archie.
  90.  
  91.  
  92.  
  93.  
  94.                                   Usage
  95.                                  -------
  96.  
  97.     msplit -h | [-s]|-c [-n <size>[k]] [-d] <filename> [to <dest>]
  98.  
  99.   The order of options is ignored. Here are the options:
  100.  
  101.        -h               Displays this usage table.
  102.  
  103.        -s               msplit works in splitting mode (default)
  104.                         The filenames   will get a suffix '.Mn' where n is
  105.                         the number of the part.
  106.  
  107.        -c               msplit works in concatenating mode.
  108.                         msplit will search files named filename.Mn where n
  109.                         counts  up from 1.  If the  file  won't be  found,
  110.                         msplit assumes that the work is done.
  111.  
  112.        -n <size>[k]     If  'k' is  not  specified,  msplit  computes  the
  113.                         amount  of bytes  that will fit as much  blocks as
  114.                         possible but not more than size bytes. If a 'k' is 
  115.                         specified,  size is  interpreted as the  amount of 
  116.                         kilobytes.
  117.                         To be correctly:  The size is  multiplied by 1000,
  118.                         so you  got a  kilo-byte,  not  a  kbyte!  I asked
  119.                         several  people  and  everybody  told me that this
  120.                         would be much more handy than real kbytes.
  121.  
  122.         -d              After processing, the inputfile will be deleted!
  123.  
  124.         <file>          Process file named file.
  125.  
  126.         to <dest>       Write  outputfiles to directory dest.  Must be the
  127.                         path of a directory with a trailing slash ('/') or
  128.                         colon (':') or anything that your system wants.
  129.  
  130.  
  131.  
  132.  
  133.                                   Examples
  134.                                  ----------
  135.  
  136.   I don't like  writing long  descriptions and an  example may  explain the
  137. same in less time.  So let's say you have a file  dh0:test of 530000 bytes.
  138. Then, you go to the directory dh0: and type:
  139.  
  140.       msplit -n 100k -d file to dh1:
  141.  
  142.   This will split the file dh0:file.txt into 5 files of 99328 and one file
  143. of 33360 bytes. After spliting the file it will be deleted.
  144.   You may concat the files by typing
  145.  
  146.       msplit -c dh1:file to dh2:
  147.  
  148.   This will  generate a file  named  dh2:file.  Quite easy, isn't it? Other
  149. systems look quite similar, this was Amiga-DOS.
  150.  
  151.   Let's have a look at VMS: Your file named test.txt has a length of 100000
  152. byte.  So you have to do 'rename test.txt test.'  because of the  generated
  153. suffix.  Then you must define 'msplit :== $HARDDISK:[USER]msplit.exe' (your
  154. own values  of course)  to use msplit  with Unix-like  commandline options!
  155. Then you are able to use it as like as described:
  156.  
  157.       msplit -n 10k test to $TMP:[USER]
  158.  
  159.   You'll get 9 files of 9036 bytes and one of 964 bytes on your disk
  160. TMP: . That's all.
  161.  
  162.  
  163.  
  164.  
  165.                          Special abilities
  166.                         -------------------
  167.  
  168.   The sourcecode of msplit may be compiled on all machines with few changes
  169. in the  sourcecode.  It was  written in ANSI-C  and the code  is tested and
  170. prepared for the systems  Amiga-DOS on MC68000,  MS-DOS on 80286 (thanks to
  171. my brother Sven for help), VAXes under VMS, Sun-OS (BSD 4.3 UNIX), System-V
  172. UNIX, Solaris  (the last three for Sun Sparc),  DEC-Stations under  ULTRIX,
  173. Convex-OS and Archimedes on ARM (thanks to Stefan Duetzmann). You only have
  174. to read the precompiler commands in the header of the file, then you remove
  175. the comment signs on the include  commands where your system  is mentioned.
  176. Other systems may  require few changes in the precompiler commands.  Try to
  177. compile it and modify  the includes as  the compiler wants. If you success-
  178. fully did this or even nonsuccessfully tried, please tell me.
  179.  
  180.  
  181.  
  182.  
  183.                              Known bugs
  184.                             ------------
  185.  
  186.   Users of  MS-DOS and  VMS machines have to be a  little more careful than
  187. others because of the limits of their system. You can only define filenames
  188. without extension because msplit uses an extension itself.  While any other
  189. system accepts  filenames  with several points in it, MS-DOS and VMS won't!
  190. You'll get some strange  error messages, msplit doesn't check this (but who
  191. uses MS-DOS anyway? :). I don't know on which  machine the exe-file is run-
  192. able. Anyway,  it was compiled on a  486 machine in  80286-mode without co-
  193. processor. Should be ok, I think. (Oh, I really hate MS-DOS !)
  194.  
  195.  
  196.  
  197.  
  198.                       Contact address / Updates
  199.                      ---------------------------
  200.  
  201.   You may send me mail, sugar, sweets or food if you contact me at:
  202.  
  203.         Rene Tschirley
  204.         Senftenberger Ring 48c
  205.         13435 Berlin
  206.         GERMANY
  207.  
  208.         e-mail:
  209.          drt@hmi.de
  210.          gremlin@cs.tu-berlin.de
  211.  
  212.   If there  should be any bugs  or you think  msplit should  be able to do
  213. something  it doesn't do yet,  please mail me.  If there are bugreports or
  214. wished extensions, I'll write an update and post in the internet (probably
  215. ftp.cs.tu-berlin.de),  send it to any  PD-series or to  anybody who wishes
  216. and tells me so. I am always interested in your opinion about msplit <8-).
  217.  
  218.  
  219.  
  220.  
  221.                                    History
  222.                                   ---------
  223.  
  224. V 1.0  (Dec 20, 93) -   first bugfree release with Amiga system calls
  225. V 1.1  (Dec 23, 93)  -   replaced system calls by ANSI-standard routines
  226. V 1.2  (Jan 06, 94) -   better split and concat-algorithm which causes more
  227.                         speed (around factor 15-18 times faster),
  228.                         Tested  on   MS-DOS,   UNIX System V,   BSD4.3 UNIX,
  229.                         ConvexOS, VMS
  230. V 1.3  (Feb 07, 94) -   added option -d, changed commandline parser,
  231.                         tested on DEC-Stations under ULTRIX
  232.             tested on Acorn Archimedes
  233.  
  234.