home *** CD-ROM | disk | FTP | other *** search
/ Fish 'n' More 2 / fishmore-publicdomainlibraryvol.ii1991xetec.iso / disks / disk458.lzh / ATCopy / Patch_Option.c < prev    next >
C/C++ Source or Header  |  1991-02-15  |  2KB  |  74 lines

  1. /* $Revision Header *** Header built automatically - do not edit! ***********
  2.  *
  3.  *      (C) Copyright 1990 by Peter Vorwerk
  4.  *
  5.  *      Name .....: Patch_Option.c
  6.  *      Created ..: Sunday 30-Dec-90 14:49
  7.  *      Revision .: 1
  8.  *
  9.  *      Date            Author          Comment
  10.  *      =========       ========        ====================
  11.  *      07-Jan-91       Peter Vorwerk   Fixed for V2.2
  12.  *      30-Dec-90       Peter Vorwerk   Created this file!
  13.  *
  14.  * $Revision Header ********************************************************/
  15.  #define REVISION 1
  16.  
  17. #include <stdio.h>
  18. #include <string.h>
  19. #include <libraries/arpbase.h>
  20.  
  21. #define OFFSET 0x7ff
  22.  
  23.  
  24. #define OFFSET2 OFFSET - 0x03
  25. #define OFFSET3 OFFSET - 0x19
  26.  
  27. void main(int argc, char *argv[])
  28. {
  29.     FILE *fp;
  30.     char *s;
  31.     char string[16];
  32.  
  33.     if (argc < 3)
  34.     {
  35.         Printf("USAGE: %s ATCopy option [path]\n",argv[0]);
  36.         exit(10);
  37.     }
  38.     fp = fopen(argv[1],"r+");
  39.     if (fp == NULL)
  40.     {
  41.         Printf("Error: Can't open %s\n",argv[1]);
  42.         exit(10);
  43.     }
  44.     fseek(fp,OFFSET,0);
  45.     fscanf(fp,"%15s",string);
  46.     if (strcmp(string,"Option"))
  47.     {
  48.         Printf("Error: Wrong Version\nAbortet\n");
  49.         fclose(fp);
  50.         exit(10);
  51.     }
  52.     fseek(fp,OFFSET2,0);
  53.     s = argv[2];
  54.     do
  55.     {
  56.         fputc((int) *s++,fp);
  57.     }
  58.     while(*s != '\0');
  59.     fputc((int) *s++,fp);
  60.     if (argc > 3)
  61.     {
  62.         fseek(fp,OFFSET3,0);
  63.         s = argv[3];
  64.         do
  65.         {
  66.             fputc((int) *s++,fp);
  67.         }
  68.         while(*s != '\0');
  69.         fputc((int) *s++,fp);
  70.     }
  71.     fclose(fp);
  72.     exit(0);
  73. }
  74.