#include <stdinc.h>
#include <getparam.h>
string defv[] = {
    "key=val\n       helpstring",
    ...
    "VERSION=x.y\n   mm-ddd-yy  AUTHOR",
    NULL,
};
string usage="Usage message ... ";
string cvsid="$Id$";    
void nemo_main(void)
{
    stropen(getparam("in"),"r");
    stropen(getparam("out"),"w");
    ...
}
Instead of starting a program with main(argc,argv) a NEMO program should be started with nemo_main(), but see LIMITATIONS below.
The code for nemo_main looks something like:
   #include <stdinc.h>
   #include <getparam.h>
   extern string defv[];           /* defv MUST be defined in user program
! */
   void main(argc,argv)
   int argc;                               /* number of arguments + 1 */
   char *argv[];                           /* pointer to arguments */
   {
      if(argv[argc] != NULL)
         warning("Your C compiler seems to have an old-style (short) argv[]");
      initparam(argv,defv);               /* start  */
      nemo_main();                        /* call program */
      finiparam();                        /* end */
      exit(0);                            /* return normal status to shell
*/
   }
~/src/kernel/misc nemomain.c nemomain.cc c and c++ versions ~/src/kernel/io defv.c usage.c stubs for missing extern
29-jun-89 created PJT 28-nov-94 doc PJT 17-mar-04 void PJT