W8SDZ@Simtel20.ARPA (05/08/84)
From: Keith Petersen <W8SDZ@Simtel20.ARPA> Date: Wednesday, 25 April 1984 13:44-MST From: Dick <MEAD at USC-ECLB.ARPA> To: info-cpm at BRL.ARPA Re: SYNONYM art. in Microsystems Microsystems has a short review of a program, in the PD, called SYNONYM. I gather that the source listing was supposed to be included, but lately Microsystems has been pretty sloppy with such things, and it got left out. Has anyone seen the program??? Yes, the program is available on SIMTEL20 now. It's in MICRO:<CPM.DIRUTL>SYNONYM2.DOC and MICRO:<CPM.DIRUTL>SYNONYM3.ASM SYNONYM is a program that generates a program. This generated program when executed, will invoke another CP/M command. It's really not as complex as it sounds. Here is an example: You would like to invoke Microsoft basic by typing only the letter "B" instead of typing "MBASIC". You could just rename MBASIC.COM to B.COM but you could no longer use "MBASIC" to invoke basic. SYNONYM can create a "B.COM" file that when invoked will modify the CCP input buffer to "MBASIC" and then jump to the CCP. The new .COM file is very small (1 block) and is saved with the $SYS indicator set (in CP/M 2.x ) so it won't clutter up your DIRectory. Then to invoke basic you would only have to type: "B". You could also pass basic a program name to execute just as with MBASIC by typing: "B BASPGM" (where BASPGM is the name of the basic program). You can also create a SYNONYM with a fixed parameter string. For example you might like to run a basic program called STARTREK.BAS by typing "ST". SYNONYM can create a file ("ST.COM") that will invoke MBASIC and pass it a fixed string "STARTREK". If you do create a SYNONYM with a fixed paramater string any paramaters entered on the command line invoking the SYNONYM will be appended to the fixed paramaters. This could be used to invoke the SUBMIT program, pass it the name of the .SUB file as a fixed paramater, and then any other variable paramaters. The program can be assembled with MAC or ASM and has been tested on both CP/M version 1.4 and version 2.x (the $SYS attribute is set only on 2.x). --Keith