home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / PASCAL / ARCTV26B.ZIP / PROUNSQ.INT < prev   
Encoding:
Text File  |  1993-01-04  |  1.9 KB  |  77 lines

  1.  
  2. (*
  3.  * prounsq.int - PCB ProDOOR view-archive text library (low-level)
  4.  *
  5.  * 9-sep-87 (rev. 14-Dec-87 shs)
  6.  *
  7.  * Data declarations for the archive text-view functions.
  8.  *
  9.  *)
  10.  
  11.  
  12. const
  13.    max_binary = 50;             {non-printing count before binary file trigger}
  14.    max_linelen = 200;           {line length before binary file triggered}
  15.    uinbufsize = 512;            {input buffer size}
  16.    default_pattern = '*.*';     {if enter pressed at filespec prompt}
  17.  
  18.    {table of filetypes to exclude from text view function}
  19.    nexclude = 6;
  20.    exclude:  array[1..nexclude] of string[4] =
  21.         ('EXE', 'COM', 'CHN', 'ARC', 'BIN', 'OV');
  22.  
  23. const
  24.    arcmarc =           26;    { special archive marker }
  25.    arcver =            9;     { max archive header version code }
  26.    fnlen =             12;    { file name length - 1 }
  27.  
  28. type
  29.    fntype =            array [0.. fnlen] of char;
  30.  
  31.    heads =             record
  32.          name:               fntype;
  33.          size:               longint;
  34.          date:               word;
  35.          time:               word;
  36.          crc:                word;
  37.          length:             longint;
  38.    end;
  39.  
  40. var
  41.    hdrver:             integer;
  42.    hdr:                heads;
  43.    arcfile:            dos_handle;
  44.    arc_eof:            boolean;
  45.    extname:            anystring;
  46.    pattern:            anystring;
  47.  
  48.  
  49. { definitions for unpack }
  50.  
  51. const
  52.    dle =               $90;
  53.  
  54. var
  55.    state:              (nohist,inrep);
  56.    fsize:              longint;
  57.    lastc:              integer;
  58.  
  59.  
  60. { definitions for door interface }
  61.  
  62. var
  63.    uinbuf:             array[1..uinbufsize] of byte;
  64.    uinpos:             integer;
  65.    uinmax:             integer;
  66.    ufilepos:           longint;
  67.       
  68.    uoutbuf:            string[max_linelen];
  69.    binary_count:       integer;
  70.    header_present:     boolean;
  71.  
  72.  
  73. {$IFNDEF IN_ARCTV}
  74.    procedure view_archive_text(arcname: anystring);
  75. {$ENDIF}
  76.  
  77.