home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 11 Util
/
11-Util.zip
/
NCDC_OS2.ZIP
/
NCDC.DOC
next >
Wrap
Text File
|
1993-04-13
|
8KB
|
235 lines
Exploding: ncdc.doc
N C D C
version 1.51
Jurgen A. Doornik
1. Introduction.
___________________________________________________________________
NCDC is a XX/UU encoder/decoder. There are many of these around,
so why NCDC?
o NCDC is completely free, and comes with C source code.
o NCDC is written in ANSI C, with conditional code sections
for old style (K&R) headers, Unix and VAX/VMS.
NCDC currently runs on MsDos, Unix, and VAX/VMS computers.
You can easily adjust the source code for other machines,
but it will probably run unchanged.
o NCDC has the decoder and encoder in one program, and
is fairly intelligent: it knows when to decode or encode,
and, when decoding, which method to use.
o Unlike many other decoders, NCDC gives warning messages
if something unexpected is found. NCDC can glue broken lines.
o NCDC is efficient. Its speed approximates that of assembler
encoders/decoders.
If you have any suggestions for improvement, or find any bugs,
please report them to me, via email:
INTERNET: ECONZ@UK.AC.OX.VAX
or by mail:
Jurgen Doornik
Institute of Economics and Statistics
St Cross Building, Manor Road
Oxford OX1 3UL
United Kingdom
FAX +44 - 865 - 271094
Special thanks are due to Arjen Merckens, who helped debugging
NCDC, and added the /s option for VAX/VMS. Arjen is author
of ACD (ChDir FAST; more features than LCD/NCD and free).
2. Contents of zip file.
___________________________________________________________________
NCDC.C - C source code for NCDC
NCDC.DOC - this file
NCDC.EXE - Dos executable
NCDC.VXE - VAX/VMS executable
3. Installation and compilation
___________________________________________________________________
To install the VAX/VMS executable, you need to transfer it (as a
binary file) to the VAX, rename it to NCDC.EXE, and add something
like
$NCDC == "$disk:[path]NCDC.EXE"
to your login.com. To compile on the VAX type
CC NCDC.C
and then
LINK NCDC
I had to add
$ define LNK$LIBRARY "SYS$LIBRARY:VAXCRTL"
to my login.com for this to work.
The Dos version is compiled and linked using Microsoft C/C++ 7.00,
using the command
CL NCDC.C
So no extra optimizations were used.
4. How to use NCDC.
___________________________________________________________________
Usage: NCDC infile [outfile] [/u] [/##]
infile The file to encode or decode.
NCDC decodes if infile has no extension or
an extension ENC, XXE or UUE. Otherwise NCDC
will encode. When decoding, the decoding method
is derived from first encoded line of infile.
When encoding XXencoding is the default.
outfile Optionally override the destination. This is
useful when the name of the original file which
has been encoded, is invalid on the decoding
platform.
/u Set encoding method to UUencode.
/## Sets maximum outfile size to ## kilobytes. E.g.
NCDC test.zip /50
could lead to test.enc, test.en2 and test.en3
being created. If you then do
NCDC test
NCDC will see that test.enc is not enough, and
automatically include test.en2 and test.en3.
/s This option is only available under VAX/VMS.
By default the decoded file has Variable length format.
Use /s to change this to Stream_LF format.
5. When to use NCDC.
___________________________________________________________________
Executable files, and word processor files cannot be sent by email
as such. They have to be encoded on one side, and decoded on the
other side to make sure that no information is lost.
Email often involves several types of computers, leading to several
conversions into other character coding systems.
An email transmission of a document usually works like this:
1. compress the document <---- PKZIP,ARJ,ZOO,LHARC, etc
2. encode the document <---- NCDC
3. send it to the mainframe
3. email the document
.....
4. document is received
5. download it from the mainframe
6. decode the document <---- NCDC
7. decompress the document <---- PKUNZIP,ARJ,ZOO,LHARC, etc
To send test.doc, for example:
1. PKZIP test.doc
2. NCDC test.zip <---- XXencode file test.zip into test.enc
.....
6. NCDC test <---- XXdecode file test.enc into test.zip
7. PKUNZIP test
Altough steps 1 and 7 are optional, they are advisable in order to
keep network transmissions at a minimum.
6. License, warranty and disclaimer.
___________________________________________________________________
NCDC is written by Jurgen A. Doornik in ANSI C. Some special
additions are made for VAX/VMS and UNIX machines.
You may distribute NCDC given these restrictions:
o the program shall be supplied in its original, unmodified
form, which includes this documentation;
o no fee is charged;
o the program may be included, or bundled, with any other
programs/products (including for-profit products) on the
condition that I shall receive one copy of the program/
product (as given/sold), and an update each time NCDC
is bundled with the update.
o You may use and modify the source code for personal pur-
poses only, and on the condition that I shall receive
a copy of the modified version.
For any other use contact me.
Jurgen Doornik INTERNET: ECONZ@UK.AC.OX.VAX
Institute of Economics and Statistics
St Cross Building, Manor Road
Oxford OX1 3UL
United Kingdom
FAX +44 - 865 - 271094
DISCLAIMER:
I shall not be responsible for any damages or inconveniences
incurred due to the usage of NCDC.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW WILL JURGEN DOORNIK BE
LIABLE TO YOU FOR DAMAGES, INCLUDING ANY LOST PROFITS, LOST MONIES, OR
OTHER SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR
DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY THIRD PARTIES)
THESE PROGRAMS, EVEN IF YOU HAVE BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES, OR FOR ANY CLAIM BY ANY OTHER PARTY.
7. Revision history.
___________________________________________________________________
26-10-92 (JAD): Released version 1.51.
26-10-92 (JAD): Pre/post encoding text used \n instead of
\r\n for MSDOS.
04-08-92 (JAD): Released version 1.5.
08-04-92 (JAD): VMS specific help text restricted to VMS.
Documented NCDC.
01-05-91 (AM): added smaller buffer for VMS; added /s option:
Stream_LF decoding for VMS.
10-04-91 (JAD): added osize = 0 in decode; added get_start()
because continuation files received from SIMTEL don't
start with begin. When decodeing was expecting multiple
of four in last line, now computes # actually expected
(when encoding still writing multiple of four.
9-04-91 (JAD): changed VMS OPEN_W_ARG, added pre-ANSI C function
headers for UNIX.
8-04-91 (JAD): Introduced MSDOS/VMS/UNIX versions.
4-04-91 (JAD): Bug fix: table was not kept when found at top of
encoded file.