How to specify parameters for your program

To pass parameters to your program, include them at the end of the IDF command after a slash (⁄). IDF interprets anything that follows a slash as parameters that should be passed to your program.

These parameters are parsed into tokenized and extended parameter lists. The flag byte in R1 has the same contents as it has if your program is invoked directly. If IDF is invoked from an EXEC-1 program, the contents of R0 at the time IDF was invoked are propagated to your program's R0.

  * CMS Parameter Lists ---------------------------------------
  * A) Extended Parameter List
  EPLIST DC    A(start of command verb)
         DC    A(start of first nonblank byte following verb)
         DC    A(first byte past the end of the argument list)
         DC    A(0)
         DS    0D               align next part on doubleword
  * B) Tokenized Parameter List
  TPLIST DC    CL8'command verb'
         DC    CL8'token'
         ...                                               ...
         DC    CL8'token'
         DC    8X'FF'
  CMDSTR DC    C'original command string'
A warning about leading blanks: All blanks between the slash (⁄) and the parameters to your program are included in the information passed to your program. If you do not want initial blanks passed to your program, you must place the parameters immediately after the slash, with no intervening blanks.

Unless your program is a nucleus extension (see CMS nucleus extensions loaded explicitly), IDF loads it into the appropriate area (user⁄transient) with the LOADMOD command.

For example, to debug MYPROG, normally invoked by:
     MYPROG fn ft fm (abcd
You issue:
     ASMIDF myprog / fn ft fm (abcd
If you want to specify more options for IDF, for example to set display colors, you specify:
     ASMIDF myprog (COLORS RWGY / fn ft fm (abcd