int main(int margc, char **margv) { argc=margc; argv=margv; zstart(); return(0); }
int main (int argc, char *argv[]) { int opt,p,pp; char *fvar; UnProtectMemory(); while((opt = getopt(argc, argv, "01:2:789a:c:d:ef:g:hijk:lmno:p:r:s:tuv:wyz?")) != -1) { switch(opt) { /* Palette 0 disable */ case '0': { Palette0 = 1; break; } /* Player 1 Input */ case '1': { //if (!hasroom) return 4; pl1contrl = my_atoi(optarg); if (pl1contrl > 6) return 15; p++; ConvertJoyMap1(); break; } /* Player 2 Input */ case '2': { // if (!hasroom) return 4; pl2contrl=my_atoi(optarg); if (pl2contrl > 6) return 15; p++; ConvertJoyMap2(); break; } /* SPC700 speed hack disable */ case '7': { SPC700sh = 1; break; } case '8': { Force8b = 1; break; } /* Off by 1 line */ case '9': { OffBy1Line = 1; break; } case 'c': { if (strcmp(optarg,"b") == 0) { printf("\nRemove background color in 256 modes not implemented!\n"); } else if (strcmp(optarg,"c") == 0) { smallscreenon = 1; pp++; } else { ScreenScale = 1; } break; } case 'd': { if (strcmp(optarg,"d") == 0) { DSPDisable = 1; pp++; } else { /* debugger will never work under linux, since it's full of bios interrupt calls */ printf("\nDebugger not implemented for Linux version!\n"); } break; } case 'e': { enterpress = 1; break; } case 'f': { // if (!hasroom) return 4; frameskip = my_atoi(optarg); if (frameskip > 9) return 10; frameskip++; p++; break; } case 'g': { // if (!hasroom) return 4; gammalevel = my_atoi(optarg); if (gammalevel > 5) return 11; p++; break; } case 'h': { romtype = 2; break; } case 'i': { finterleave = 1; break; } case 'j': { GUIClick = 0; MouseDis = 1; break; } case 'k': { // if (!hasroom) return 4; MusicRelVol = my_atoi(optarg); if (MusicRelVol > 100) return 16; p++; break; } case 'l': { romtype = 1; break; } /* disables GUI */ case 'm': { guioff = 1; break; } case 'n': { scanlines = 1; break; } case 'o': { if (strcmp(optarg,"m") == 0) { MMXSupport = 1; pp++; } else { MMXSupport = 0; } break; } case 'p': { // if (!hasroom) return 4; per2exec = my_atoi(optarg); if (per2exec > 150) return 14; if (per2exec < 50) return 14; p++; break; } case 'r': { // if (!hasroom) return 4; SoundQuality = my_atoi(optarg); if (SoundQuality > 5) return 12; p++; break; } case 's': { if (strcmp(optarg,"a") == 0) { showallext = 1; pp++; } else if (strcmp(optarg,"n") == 0) { SnowOn = 1; pp++; } else { spcon = 1; soundon = 1; } break; } case 't': { ForcePal = 1; break; } case 'u': { ForcePal = 2; break; } case 'v': { if (strcmp(optarg,"8") == 0) { V8Mode = 1; pp++; } else { // if (!hasroom) return 4; cvidmode = my_atoi(optarg); if (cvidmode > 10) return 13; p++; } break; } case 'w': { vsyncon = 1; break; } case 'y': { antienab = 1; break; } case 'z': { StereoSound = 1; break; } case '?': { displayparams(); return 9; } } } /* execute rom filename: file.x */ if (optopt == '?') { if (argv[optind] != NULL) { fvar=&fname; fvar[0] = strlen(argv[optind]); strncpy(&fvar[1], argv[optind],127); makeextension(); } } zstart(); return 0; }