Metropoli BBS
VIEWER: apl.c MODE: TEXT (ASCII)
/*Copyright (C) 1993, 1996 by Thomas Glen Smith.  All Rights Reserved.*/
/* apl APL2 V1.0.1 *****************************************************
* This is the APL mainline module.                                     *
***********************************************************************/
#define INCLUDES APLCB+APLDEBUG+APLMAIN+STDIO
#include "includes.h"
main(argc, argv)
int argc;
char *argv[];
{
#if APL_DEBUG
	void mem_check(void);
	void mem_init(void);
	void mem_term(void);
#endif
	Aplclean; Aplcpywr; Aplwkst; Funcsusp;
	int loop = 1;
	char *arg,c;

#include "aplinit.h"
	while (argc > 1) {
		arg=argv[--argc];
		while ('\0' != (c = *arg++)) switch(c) {
			case '-': break;
#if APL_DOS
			case 'f': aplfont = 1; /* Use special font logic. */
				break;
#endif
			case 'q': aplquiet = 1; /* Start quietly. */
				break;
			default:
				printf("Invalid option = %c\n",c);
				exit(1);
		} /* End of while/switch. */
	} /* end while. */
#if APL_COPYRITE
	if (aplquiet == 0)
		aplcpywr(); /* emit copyright notice */
#endif
	while (loop) {
		funcsusp(); /* main terminal interaction */
		loop = aplwkst(); /* go do deferred command */
	}
	aplclean(); /* go clean up memory */
#if APL_DEBUG
	mem_term(); /* terminate the memory debugging package */
#endif
}
[ RETURN TO DIRECTORY ]