home *** CD-ROM | disk | FTP | other *** search
- DOUMENTATION FOR SPEC.COM
-
- CP/M command specification: SPEC filename.COM
-
- where <filename> represents the filename and filetype of a valid
- CP/M file containing object code which is loaded at 100h.
-
- The program will abort with an appropriate message if
-
- (1) No filename is specified, or
- (2) The file does not exist on the default drive.
-
- It is recommended that both SPEC and the target file be on the
- default drive.
-
- Also, note that SPEC is limited to files not greater than two
- extents. This was both for necessity and to avoid 16-bit arithmetic,
- however, if anyone would like to modify the program to include
- larger files, I might be willing to provide the source to them.
- Leave me a message on the boards...
-
-
-
- The program provides two degrees of protection:
-
- (1) A reference byte is stored on the system track the first time
- the protected file is loaded. For this reason, the protected
- program must exist on a standard disk format in which the outer
- track (TRK00) is reserved for the operating system. If the
- disk is copied, without copying the same system tracks, the
- program will terminate with 'UNLAWFUL COPY' and a warm boot.
-
- This byte is stored in the CP/M proprietary message and should
- not effect the operating system.
-
- (2) A counter byte is stored and referenced in memory and compared
- against SPEC. SPEC is requested when the program is first
- called and represents the number of loads you designate for the
- protected file. When SPEC has been reached, the protected
- program will then self-erase. Any attempts to unerase will be
- useless since the program will also write over itself.
-
- The purpose of this program was to provide software on a trial basis
- for my clients. If they decided against purchasing, the software
- would self-destruct and they would be unable to use it further. I
- thought this was a good idea at the time, and I still think it is a
- good idea. However, it is very difficult to protect CP/M programs
- since there does not appear to be any way to absolutely reference
- the disk. SPEC uses direct BIOS calls, against all the edicts of
- Digital Research, and they proved, if you'll forgive my French, to
- be a royal pain in the butt. It was necessary to set up alternate
- stacks and DMA's within the protected program and even then some
- CP/M utilities, like STAT, seem to behave erratically after run
- against SPEC. Ordinary programs, however, seem to run okay and so I
- am releasing SPEC to the domain albeit retaining exclusive
- copyrights.
-
- It's back to my experiments with the 1793 to see if there is any way
- to mark the disk. If any of you have any insight into referencing
- the gap or ID, I would sure like to hear about it!!!!
-
- J. Fremont
- Los Angeles
- August 13, 1985
-