home *** CD-ROM | disk | FTP | other *** search
/ Emulator Universe CD / emulatoruniversecd1998.iso / CPC / Utils / DSKutil / XTI.C < prev    next >
Encoding:
C/C++ Source or Header  |  1996-12-13  |  2.3 KB  |  78 lines

  1. /*  Disk Image Extender, conversion utility by Pierre Guerrier  */
  2. /*  Release 1.2b, December 1996.        Contact: pg@masi.ibp.fr */
  3. /*      See attached "read_me" file for more informations        */
  4.  
  5.  
  6. #include <stdio.h>
  7. #include <stdlib.h>
  8. #include <string.h>
  9. #include <ctype.h>
  10. #include <fcntl.h>
  11.  
  12. #define MSDOS  1
  13. #define AMIGA  0
  14. /* change these values for your OS, all zero -> UNIX */
  15.  
  16. #define SEEK_SET 0
  17. #define SEEK_CUR 1
  18. #define SEEK_END 2
  19. /* flags for fseek(), change if different on your OS */
  20.  
  21. #include "XTI_CONV.C"
  22. #include "XTI_SHLL.C"
  23. #include "XTI_MISC.C"
  24. #include "XTI_INCL.C"
  25.  
  26.  
  27.  
  28. int main(int argc, char **argv)
  29. {
  30.  int i;
  31.  int startArg = 1;
  32.  
  33.  printf("Disk Image Extender v1.2b (c) 1996 Pierre Guerrier, ");
  34. #if MSDOS == 1
  35.  printf("DOS port by Ulrich Doewich\n");
  36. #elif AMIGA == 1
  37.  printf("Amiga port by Kevin Thacker\n");
  38. #else
  39.  printf("Unix version\n");
  40. #endif
  41.  
  42.  Reset();
  43.  switch(argc)
  44.  {
  45.   case 2:  getFormat(argv[1]); doFile(argv[1]); break;
  46.   case 3:
  47.     if (!strcmp(argv[1], fBCK)) { doRevert(argv[2]); break; }
  48.     if (!strcmp(argv[1], fICL)) { doIncluder(argv[2]); break; }
  49.     if (extFlag(argv[1])) { doExt(argv[2]); break; }
  50.     if (newFlag(argv[1])) { doNew(argv[2]); break; }
  51.     doFlag1(argv[1]);
  52.     if (theFormat == kNUL)
  53.        {
  54.        doFlag2(argv[1]);
  55.        getFormat(argv[2]);
  56.        }
  57.     doFile(argv[2]);
  58.     break;
  59.   case 4:
  60.     if (!strcmp(argv[1], fMRG)) { doMerger(argv[2], argv[3]); break; }
  61.     doFlag1(argv[1]);
  62.     doFlag2(argv[2]);
  63.     doFile (argv[3]);
  64.     break;
  65.   default: fprintf(stderr,"Usage 1: %s [-format override] [-special] file\n", argv[0]);
  66.            fprintf(stderr,"  Known format tags: dsk, edsk, dif, odif, cpd, emu, ami, cpc, ncpc\n");
  67.            fprintf(stderr,"  Special tags: DE, cut[size], where \"size\" is in 0..8192\n");
  68.            fprintf(stderr,"Usage 2: %s -merge file1 file2\n", argv[0]);
  69.            fprintf(stderr,"Usage 3: %s -es[side no] file, where \"side no\" is 1/2\n", argv[0]);
  70.            fprintf(stderr,"Usage 4: %s -incl file\n", argv[0]);
  71.            fprintf(stderr,"Usage 5: %s -new[format] file\n", argv[0]);
  72.            fprintf(stderr,"  Where \"format\" is one of: S, D, I\n");
  73.            fprintf(stderr,"Usage 6: %s -back file\n", argv[0]);
  74.            exit(3); break;
  75.  }
  76.  exit(0);
  77. }
  78.