home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / ENTERPRS / CPM / UTILS / S / SGTOOL11.ARC / SAVECHRS.C < prev    next >
C/C++ Source or Header  |  1993-07-25  |  1KB  |  62 lines

  1. /*
  2. SG C Tools 1.1
  3.  
  4. (C) 1993 Steve Goldsmith
  5. All Rights Reserved
  6.  
  7. Saves both VDC character sets to a file.
  8.  
  9. Compiled with HI-TECH C 3.09 (CP/M-80).
  10.  
  11. To compile with HI-TECH C and SG C Tools source on same disk use:
  12. C SAVECHRS.C -LC128
  13. */
  14.  
  15. #include <stdio.h>
  16. #include <hitech.h>
  17. #include <vdc.h>
  18.  
  19. void disphelp(void);
  20. void savecharsets(char *FileName);
  21.  
  22. extern ushort vdcCharMem;
  23. extern ushort vdcCharMemSize;
  24.  
  25. main(int argc, char *argv[])
  26. {
  27.   puts("\nSAVECHRS (C) 1993 Steve Goldsmith");
  28.   if (argc == 2)
  29.   {
  30.     savevdc();
  31.     savecharsets(argv[1]);
  32.     restorevdc();
  33.   }
  34.   else
  35.     disphelp();
  36. }
  37.  
  38. void disphelp(void)
  39. {
  40.   puts("\nTo save VDC character definitions use:\n");
  41.   puts("SAVECHRS FILENAME.EXT");
  42. }
  43.  
  44. void savecharsets(char *FileName)
  45. {
  46.   uchar  *BufPtr;
  47.   FILE   *CharFile;
  48.  
  49.   if ((CharFile = fopen(FileName,"wb")) != NULL)
  50.   {
  51.     puts("\nCopying VDC character definitions to buffer...");
  52.     BufPtr = memtobufvdc(vdcCharMem,vdcCharMemSize);
  53.     if (BufPtr != NULL)
  54.     {
  55.       printf("Copying buffer to %s...\n",FileName);
  56.       fwrite(BufPtr,sizeof(uchar),vdcCharMemSize,CharFile);
  57.       free(BufPtr);
  58.     }
  59.     fclose(CharFile);
  60.   }
  61. }
  62.