Datacomp Notes :
1. Common Errors and Probable Causes.
	1.1. DOS Error : Sector size is not 512K
	 Probable cause : a. image file is fragmented - use disk defragmenting utility to fix the problem
			  b. image file is corrupted  - the data are likely to be lost for Datacomp cannot use such a file
	1.2. Files in subdirectory have bad names (such as #4_,%) while in root directory they're OK.
	 Probable cause : the image file used by shareware Datacomp contains data written by full version of Datacomp (with packing)
			  Shareware Datacomp has no packing utility, that's why it transfers to DOS actual data from disk without unpacking

			- use full version of Datacomp to access that drive

2. Attaching Packing/Unpacking Procedures.

	2.1. Requirements.
		a. packing procedure should be declared as 'pack proc near' and 'unpack proc near'
		   in segment .code .model small (when compiling with TASM)
                   and marked as global (see dglobals.inc)
		b. proc pack should accept buffer address in ds:si (si = di)
		   buffer size is 8K
		c. proc pack may damage contents of any register.
		d. proc pack should return the compressed data in the same buffer
		   and its size in cx. If packing is impossible (for ex. the data is an archive)
		   cx should be 7fffh (-1) and buffer contents may be changed.
		e. proc unpack should accept buffer address in ds:si (di = si)
		   The buffer contains packed frame followed by undefined data (up to the end of buffer)
		f. proc unpack should be able to uncompress given 8K buffer
		   without any additional information. (if it needs such info
		   pack should store the info in its own packed frame header).
		   the unpacked data (8K) should be returned in the same buffer.
		g. it is suggested that proc unpack being able to determine whether
		   frame is damaged and not to unpack it because of
		   probable crash.

	2.2 Linking Order.
            a.  datacomp.obj
                dcdebug.obj
                adddev.obj
                xms.obj
                comm.obj
                delfrm.obj
                utils.obj
                utils1.obj
                utils3.obj
                inputcm.obj
                outputcm.obj
                room.obj
                rwsector.obj
                scanifat.obj
                chkfat.obj

	     b.	data.obj - contains pack buffer
                Ŀ
                  pack.obj unpack.obj
                

             c. dcdata.obj

             d. messages.obj

	  2.3 set PACK=1 in datacomp.mak when compiling to use packing procedure
	      and add path to pack/unpack object files to link list in datacomp.mak
	      (see 2.2)
