home *** CD-ROM | disk | FTP | other *** search
- #include "pz.h"
-
- /* IFF2PCS input argument parsing from CLI or Workbench.
- ** This code should also put up a requester if no argument is specified...
- ** But doesn't yet.
- ** Ali Ozer, Nov 1987
- */
-
- /* If called from CLI, argc > 0 and *argv contains program name and arguments.
- ** If called from WB, argc == 0 and msg points to the arguments.
- ** Note that ParseFile returns an AmigaDOS file handle as opposed to a C
- ** file handle. ParseFile will either NOT return or return NULL if something
- ** goes wrong.
- */
- struct FileHandle *ParseArgs (argc, argv, msg)
- int argc;
- char **argv;
- struct WBStartup *msg;
- {
- struct WBArg *arg;
- struct FileHandle *fp = NULL;
-
- if (argc != 0) { /* Running from the CLI */
- if (argc != 2) Panic ("Usage: IFF2PCS ifffilename");
- else fp = Open (argv[1], MODE_OLDFILE);
-
- } else { /* Else a WB argument... */
-
- if ((msg == NULL) ||
- (msg->sm_NumArgs < 2) ||
- ((arg = (msg->sm_ArgList)+1) == NULL))
- Panic ("You need to specify a file (See IFF2PCS.DOC)");
- else {
- struct Lock *olddir = CurrentDir (arg->wa_Lock);
- fp = Open (arg->wa_Name, MODE_OLDFILE);
- if (olddir) CurrentDir (olddir);
- }
- }
-
- return (fp);
- }
-
-