diff options
author | Paul Gilbert | 2019-06-21 19:20:58 -0700 |
---|---|---|
committer | Paul Gilbert | 2019-06-22 14:40:50 -0700 |
commit | dd4108e7c79770ec8235bd4440e0cdc06becd9d9 (patch) | |
tree | c41d06548ac4c4fbb037b733c1cdab519822204c /engines/glk/alan2/args.cpp | |
parent | 8f75589971d70b2ca749d5389a332e6761213a5b (diff) | |
download | scummvm-rg350-dd4108e7c79770ec8235bd4440e0cdc06becd9d9.tar.gz scummvm-rg350-dd4108e7c79770ec8235bd4440e0cdc06becd9d9.tar.bz2 scummvm-rg350-dd4108e7c79770ec8235bd4440e0cdc06becd9d9.zip |
GLK: ALAN2: Removing all the existing system specific ifdef blocks
I'm going to be shortly formatting the code and doing refactoring
to work around the setjmp calls in the original, so there's little
point in keeping the system specific ifdef blocks from the original
Diffstat (limited to 'engines/glk/alan2/args.cpp')
-rw-r--r-- | engines/glk/alan2/args.cpp | 234 |
1 files changed, 2 insertions, 232 deletions
diff --git a/engines/glk/alan2/args.cpp b/engines/glk/alan2/args.cpp index caf32c1bec..2f760aedbb 100644 --- a/engines/glk/alan2/args.cpp +++ b/engines/glk/alan2/args.cpp @@ -21,208 +21,21 @@ */ #include <string> -#ifndef __PACIFIC__ -#include "glk/alan2/args.h" -#else -/* I have no idea at all why the include does not work in Pacific C ... */ -extern void args(int argc, char* argv[]); -#endif - -#include "glk/alan2/main.h" - -#ifdef __mac__ -#include "glk/alan2/macArgs.h" -#endif - -#ifdef __amiga__ -#include <libraries/dosextens.h> -#ifdef AZTEC_C -struct FileHandle *con = NULL; -#else -/* Geek Gadgets GCC */ -BPTR window; -BPTR cd; -#endif -#endif - -#ifdef GLK #include "glk/alan2/alan2.h" +#include "glk/alan2/args.h" #include "glk/alan2/glkio.h" +#include "glk/alan2/main.h" #include "glk/alan2/sysdep.h" -#endif namespace Glk { namespace Alan2 { static void switches(unsigned argc, char *argv[]) { -#ifndef GLK - uint i; - - advnam = ""; - for (i = 1; i < argc; i++) { - if (argv[i][0] == '-') { -#ifdef GLK - switch (g_vm->glk_char_to_lower(argv[i][1])) { -#else - switch (tolower(argv[i][1])) { -#endif - case 'i': - errflg = FALSE; - break; - case 't': - trcflg = TRUE; - break; - case 'd': - dbgflg = TRUE; - break; - case 's': - trcflg = TRUE; - stpflg = TRUE; - break; - case 'l': - logflg = TRUE; - break; - case 'v': - verbose = TRUE; - break; - case 'n': - statusflg = FALSE; - break; - default: - printf("Unrecognized switch, -%c\n", argv[i][1]); - usage(); - terminate(0); - } - } else { - advnam = argv[i]; - if (strcmp(&advnam[strlen(advnam)-4], ".acd") == 0 - || strcmp(&advnam[strlen(advnam)-4], ".ACD") == 0 - || strcmp(&advnam[strlen(advnam)-4], ".dat") == 0 - || strcmp(&advnam[strlen(advnam)-4], ".DAT") == 0) - advnam[strlen(advnam)-4] = '\0'; - } - } -#endif -} - - - -#ifdef __amiga__ - -#include <intuition/intuition.h> -#include <workbench/workbench.h> - -#include <clib/exec_protos.h> -#include <clib/dos_protos.h> -#include <clib/icon_protos.h> - -#include <fcntl.h> - -extern struct Library *IconBase; - -#ifndef AZTEC_C -/* Actually Geek Gadgets GCC with libnix */ - -/* Aztec C has its own pre-main wbparse which was used in Arun 2.7, with GCC we - need to do it ourselves. */ - -#include <clib/intuition_protos.h> - -extern unsigned long *__stdfiledes; /* The libnix standard I/O file descriptors */ - -void -wb_parse(void) -{ - char *cp; - struct DiskObject *dop; - struct FileHandle *fhp; - - if (_WBenchMsg->sm_NumArgs == 1) /* If no argument use program icon/info */ - dop = GetDiskObject((UBYTE *)_WBenchMsg->sm_ArgList[0].wa_Name); - else { - BPTR olddir = CurrentDir(_WBenchMsg->sm_ArgList[1].wa_Lock); - dop = GetDiskObject((UBYTE *)_WBenchMsg->sm_ArgList[1].wa_Name); - CurrentDir(olddir); - } - if (dop != 0 && (cp = (char *)FindToolType((UBYTE **)dop->do_ToolTypes, - (UBYTE *)"WINDOW")) != NULL) - ; - else /* Could not find a WINDOW tool type */ - cp = "CON:10/10/480/160/Arun:Default Window/CLOSE"; - if ((window = Open((UBYTE *)cp, (long)MODE_OLDFILE))) { - fhp = (struct FileHandle *) ((long)window << 2); - SetConsoleTask(fhp->fh_Type); - SelectInput(window); - SelectOutput(window); - __stdfiledes[0] = Input(); - __stdfiledes[1] = Output(); - } else - exit(-1L); - FreeDiskObject(dop); } -#endif -#endif void args(int argc, char * argv[]) { char *prgnam; -#ifdef __mac__ -#include <console.h> -#ifdef __MWERKS__ -#include <SIOUX.h> -#endif - short msg, files; - static char advbuf[256], prgbuf[256]; - /*AppFile af;*/ - OSErr oe; - -#ifdef __MWERKS__ - /*SIOUXSettings.setupmenus = FALSE;*/ - SIOUXSettings.autocloseonquit = FALSE; - SIOUXSettings.asktosaveonclose = FALSE; - SIOUXSettings.showstatusline = FALSE; -#endif - - GetMacArgs(advbuf); - advnam = advbuf; - -#else -#ifdef __amiga__ - - if (argc == 0) { /* If started from Workbench get WbArgs : Aztec C & GG GCC */ - struct WBStartup *WBstart; - - if ((IconBase = OpenLibrary("icon.library", 0)) == NULL) - syserr("Could not open 'icon.library'"); - /* If started from WB normal main is called with argc == 0 and argv = WBstartup message */ - WBstart = (struct WBStartup *)argv; -#ifndef AZTEC_C - /* Geek Gadgets GCC */ - wb_parse(); -#endif - advnam = prgnam = WBstart->sm_ArgList[0].wa_Name; - if (WBstart->sm_NumArgs > 0) { - cd = CurrentDir(DupLock(WBstart->sm_ArgList[1].wa_Lock)); - advnam = WBstart->sm_ArgList[1].wa_Name; - } - /* Possibly other tooltypes ... */ - } else { - /* Started from a CLI */ - if ((prgnam = strrchr(argv[0], '/')) == NULL - && (prgnam = strrchr(argv[0], ':')) == NULL) - prgnam = argv[0]; - else - prgnam++; - /* Now look at the switches and arguments */ - switches(argc, argv); - if (advnam[0] == '\0') - /* No game given, try program name */ - if (stricmp(prgnam, PROGNAME) != 0 - && strstr(prgnam, PROGNAME) == 0) - advnam = strdup(argv[0]); - } -#else -#if defined(__dos__) || defined(__win__) if ((prgnam = strrchr(argv[0], '\\')) == NULL && (prgnam = strrchr(argv[0], '/')) == NULL && (prgnam = strrchr(argv[0], ':')) == NULL) @@ -240,49 +53,6 @@ void args(int argc, char * argv[]) { if (stricmp(prgnam, PROGNAME) != 0 && strstr(prgnam, PROGNAME) == 0) advnam = strdup(argv[0]); -#else -#if defined __vms__ - if ((prgnam = strrchr(argv[0], ']')) == NULL - && (prgnam = strrchr(argv[0], '>')) == NULL - && (prgnam = strrchr(argv[0], ':')) == NULL) - prgnam = argv[0]; - else - prgnam++; - if (strrchr(prgnam, ';') != NULL) - *strrchr(prgnam, ';') = '\0'; - if (strlen(prgnam) > 4 - && (strcmp(&prgnam[strlen(prgnam)-4], ".EXE") == 0 - || strcmp(&prgnam[strlen(prgnam)-4], ".exe") == 0)) - prgnam[strlen(prgnam)-4] = '\0'; - /* Now look at the switches and arguments */ - switches(argc, argv); - if (advnam[0] == '\0') - /* No game given, try program name */ - if (strcmp(prgnam, PROGNAME) != 0 - && strstr(prgnam, PROGNAME) == 0) - advnam = strdup(argv[0]); -#else -#if defined(__unix__) || defined(__APPLE__) - if ((prgnam = strrchr(argv[0], '/')) == NULL) - prgnam = strdup(argv[0]); - else - prgnam = strdup(&prgnam[1]); - if (strrchr(prgnam, ';') != NULL) - *strrchr(prgnam, ';') = '\0'; - /* Now look at the switches and arguments */ - switches(argc, argv); - if (advnam[0] == '\0') - /* No game given, try program name */ - if (strcmp(prgnam, PROGNAME) != 0 - && strstr(prgnam, PROGNAME) == 0) - advnam = strdup(argv[0]); -#else - Unimplemented OS! -#endif -#endif -#endif -#endif -#endif } } // End of namespace Alan2 |