2 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
3 SOFTWARE CORPORATION ("PARALLAX"). PARALLAX, IN DISTRIBUTING THE CODE TO
4 END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
5 ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
6 IN USING, DISPLAYING, AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
7 SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
8 FREE PURPOSES. IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
9 CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES. THE END-USER UNDERSTANDS
10 AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.
11 COPYRIGHT 1993-1998 PARALLAX SOFTWARE CORPORATION. ALL RIGHTS RESERVED.
14 * $Source: /cvs/cvsroot/d2x/misc/args.c,v $
17 * $Date: 2001-11-09 06:57:27 $
19 * Functions for accessing arguments.
21 * $Log: not supported by cvs2svn $
22 * Revision 1.4 2001/11/05 07:39:26 bradleyb
23 * Change args_init back to InitArgs
25 * Revision 1.3 2001/01/31 15:18:04 bradleyb
26 * Makefile and conf.h fixes
28 * Revision 1.2 2001/01/24 04:29:48 bradleyb
29 * changed args_find to FindArg
31 * Revision 1.1.1.1 2001/01/19 03:30:14 bradleyb
34 * Revision 1.3 1999/08/05 22:53:41 sekmu
36 * D3D patch(es) from ADB
38 * Revision 1.2 1999/06/14 23:44:11 donut
39 * Orulz' svgalib/ggi/noerror patches.
41 * Revision 1.1.1.1 1999/06/14 22:05:15 donut
42 * Import of d1x 1.37 source.
44 * Revision 2.0 1995/02/27 11:31:22 john
45 * New version 2.0, which has no anonymous unions, builds with
46 * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
48 * Revision 1.9 1994/11/29 01:07:57 john
49 * Took out some unused vars.
51 * Revision 1.8 1994/11/29 01:04:30 john
52 * Took out descent.ini stuff.
54 * Revision 1.7 1994/09/20 19:29:15 matt
55 * Made args require exact (not substring), though still case insensitive.
57 * Revision 1.6 1994/07/25 12:33:11 john
58 * Network "pinging" in.
60 * Revision 1.5 1994/06/17 18:07:50 matt
63 * Revision 1.4 1994/05/11 19:45:33 john
64 * *** empty log message ***
66 * Revision 1.3 1994/05/11 18:42:11 john
67 * Added Descent.ini config file.
69 * Revision 1.2 1994/05/09 17:03:30 john
70 * Split command line parameters into arg.c and arg.h.
71 * Also added /dma, /port, /irq to digi.c
73 * Revision 1.1 1994/05/09 16:49:11 john
84 static char rcsid[] = "$Id: args.c,v 1.5 2001-11-09 06:57:27 bradleyb Exp $";
92 //added 6/15/99 - Owen Evans
99 int FindArg( char * s ) {
102 for (i=0; i<Num_args; i++ )
103 if (! strcasecmp( Args[i], s))
109 //added 7/11/99 by adb to free arguments (prevent memleak msg)
113 for (i=0; i< Num_args; i++ )
116 //end additions - adb
118 void InitArgs( int argc,char **argv )
126 for (i=0; i<argc; i++ )
127 Args[Num_args++] = d_strdup( argv[i] );
130 for (i=0; i< Num_args; i++ )
132 //killed 02/06/99 Matthew Mueller - interferes with filename args which might start with /
133 // if ( Args[i][0] == '/' )
136 if ( Args[i][0] == '-' )
137 strlwr( Args[i] ); // Convert all args to lowercase
139 if((i=FindArg("-ini")))
140 f=fopen(Args[i+1],"rt");
142 f=fopen("d2x.ini","rt");
144 f=fopen("d1x.ini","rt");
151 line=fsplitword(f,'\n');
152 word=splitword(line,' ');
154 Args[Num_args++] = d_strdup(word);
157 Args[Num_args++] = d_strdup(line);
159 d_free(line); d_free(word);