home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / misc / volume28 / cfx / part02 / cfx.h < prev    next >
C/C++ Source or Header  |  1992-02-02  |  3KB  |  130 lines

  1. /*
  2. CFX.H - Include module of CP/M File eXpress
  3. Copyright 20 Jan 1992 by 
  4. Carson Wilson
  5. 1359 W. Greenleaf, #1D
  6. Chicago, IL 60626
  7.  
  8. UUCP:    carson@sputnik.uucp
  9.     ..!uunet!ddsw1!carson
  10.  
  11. BBS:    Antelope Freeway, 1-708-455-0120
  12. */
  13.  
  14. #include <stdio.h>
  15. #include <ctype.h>
  16. #include <string.h>
  17. #include <setjmp.h>
  18. #include <time.h>
  19.  
  20. #ifdef UNIX
  21. # define OSTYPE "Unix"
  22. # define LBREXT ".lbr"
  23. # define DIRSEPCHAR '/'
  24. #else
  25. # include <dos.h>
  26. # include <io.h>
  27. # define OSTYPE "MSDOS"
  28. # define LBREXT ".LBR"
  29. # define DIRSEPCHAR '\\'
  30.  
  31.  /* Define this if linker makes a huge executable image containing
  32.       mostly zeros (big tables will instead be allocated at run time):
  33.  */
  34. # define DUMBLINKER
  35. #endif
  36.  
  37. #define ROWS 24
  38.  
  39. / * ======= NOTHING BENEATH THIS LINE SHOULD NEED TO BE CHANGED ======= */
  40.  
  41. /* Strings for prompts, etc */
  42.  
  43. #define PROGNAME "CFX"
  44. #define    VERS "1.1"
  45. #define    AUTHOR "Carson Wilson"
  46.  
  47. /* Following byte is repeat count */
  48.  
  49. #define    REPEAT_CHARACTER 0x90
  50.  
  51. #define NULLCHARPTR (char *) NULL
  52.  
  53. /* For mgetch() */
  54. #define WAIT 1
  55. #define NOWAIT 0
  56.  
  57. extern unsigned cksum;            /* Checksum of all bytes written to output file*/
  58. extern unsigned outreccount;        /* Number of bytes written to output record */
  59. extern unsigned long mlength;        /* current library member length */
  60.  
  61. extern char *infname;            /* Currently open input file's name */
  62. extern FILE *infd;            /* Currently open input file */
  63. extern FILE *outfd;            /* Currently open output file */
  64.  
  65. /* Command line flags */
  66.  
  67. extern int brief;            /* -b brief flag */
  68. extern int diskout;            /* -d diskout flag */
  69. extern int info;            /* -i file info */
  70. extern int uncompress;            /* -n uncompress flag */
  71.  
  72. extern unsigned char repeat_flag;    /* So send can remember if repeat required*/
  73.  
  74. extern char membername[];
  75.  
  76. /* Internal flags */
  77.  
  78. extern int inlbr;            /* in library file flag */
  79. extern int infoflag;            /* show info only */
  80.  
  81. extern unsigned long mlength;    /* library member's uncompressed size */
  82.  
  83. /* .LBR directory entry format */
  84.  
  85. struct direntry {
  86.     char status;
  87.     char name[8];
  88.     char ext[3];
  89.     unsigned short int index, length, crc;
  90.     unsigned short int credate, moddate, cretime, modtime;
  91.     char pad;
  92.     char filler[5];
  93. };
  94.  
  95. extern int contin;            /* global abort flag */
  96.  
  97. extern jmp_buf jumpbuf;            /* for longjmp() */
  98.  
  99. extern long unclength;                 /* global for library members */
  100.  
  101. extern int getopt();            /* From Turbo C package */
  102.  
  103. extern void outcrlf();                  /* globals */
  104. extern time_t filetime;
  105. extern void xferndate();
  106. extern void quit();
  107. extern void process();
  108. extern void unsqueeze();
  109. extern void uncrunch();
  110. extern void unlzh();
  111. extern void lbr();
  112. extern void stupcase();
  113. extern void output();
  114. extern char *cisubstr();
  115. extern void send();
  116. extern void enterx();
  117. extern void intram();
  118. extern void figure();
  119. extern void entfil();
  120. extern void checkwait();
  121. extern void cerror();
  122. extern void cfabort();
  123. extern void unixfn();
  124.  
  125. extern int ttyraw();            /* Unix globals */
  126. extern int ttyrestore();
  127. extern void unixfn();
  128.  
  129. /* End of CFX.H */
  130.