Date : Mon, 20 Jan 1986 18:45:40 GMT
From : Ed Greenberg <edg%micropro.uucp@BRL.ARPA>
Subject: Re: Chaining programs
In article <306@vger.UUCP> jparnas@vger.UUCP (Jacob M. Parnas) writes:
>In article <60@ucdavis.UUCP>, u557593877ea@ucdavis.UUCP (Bruce K. Martin
Jr.) writes:
>> Fellow netlanders--
>> I am looking for a quick and dirty way to get one CP/M program to execute
>> another. I have been told (by someone who didn't have the details) that
>> it is possible to have the CCP perform this function (thereby relieving me
>> of the problem of writeing a loader). If anyone has done this or could give
>> me a pointer to some information, I would appreciate the help.
>
>The best example that I have of this is contained in the source code to
> ...
An easier way to do this is to write a $$$.SUB file onto the A drive of
the system, then warm boot.
A $$$.SUB file is usually the result of running SUBMIT. The format is
to have all the commands (with arguments expanded) in REVERSE order with
each command occupying a 128 byte record. Thus record 0 of the file
will contain the last command to be executed and record N-1 will contain
the first command, where there are N commands.
The format of each record is a count byte at offset 0, then the command
line to be executed at offset 1, then a 0 byte immediately after the
command (no CR or LF).
You can examine an existing $$$.SUB by running a long submit, pressing
the reset button halfway through, then booting from ANOTHER boot disk
and loading the original boot disk in B:. Then use DDT on the existing
$$$.SUB file. Be sure to delete this file before putting the boot disk
back in A: or you will keep going where you left off the next time you
warm boot.
DBASE II uses this method of program chaining, to execute something,
then return to DBASE. You can too. You don't have to worry about
overwriting the CCP or anything.
Another trick is to reload your program at the end of the chain
procedure with some argument that tells it that it is being rerun.
Thus, you might get dates and other parameters from a file rather than
the user... Avoid copyright messages, etc.
Let me know if you want to discuss this sort of thing further.
-e
--
Ed Greenberg | {hplabs,glacier}!well!micropro!edg
MicroPro International Corp. | {ucbvax,decwrl}!dual!micropro!edg
San Rafael, California | {lll-crg,ptsfa}!micropro!edg