home *** CD-ROM | disk | FTP | other *** search
/ Jason Aller Floppy Collection / 341.img / TCS161S.ZIP / GENTYPES.PAS < prev    next >
Pascal/Delphi Source File  |  1990-07-28  |  10KB  |  399 lines

  1. {$R-,S-,I-,D-,F+,V-,B-,N-,L+ }
  2. {$M 5000,0,0 }
  3.  
  4. unit gentypes;
  5.  
  6. interface
  7.  
  8. uses dos;
  9.  
  10. const ver='1.61';
  11.       date='01/26/90';
  12.       thisversioncode=1;
  13.       maxbackscroll=10000;
  14.       maxusers=30000;
  15.       maxmessagesize=100;
  16.       maxlastcallers=20;
  17.       maxtopics=10;
  18.       maxcats=10;
  19.       xxxa='Lord Zombie';
  20.       xxxb='Renegade Bithead';
  21.       xxxc='Barimor';
  22.       xxxd='Doc. Savage';
  23.       xxxe='Maniac';
  24.       sectorsize=512;
  25.       numsectors=10000;
  26.       maxcatalogsize=50;
  27.       maxgroupsize=50;
  28.       maxsyslogdat=150;
  29.       maxsyslogsize=1000;
  30.       e_door=3;
  31.       e_controlbreak=9;
  32.       e_badconfig=100;
  33.       e_fatalfileerror=90;
  34.       e_files30=50;
  35.       e_nomodemdrv=2;
  36.       maxb=25;
  37.  
  38. { All of these are extended keystroke values. }
  39.       breakoutchar=    0;   {Control-Break}
  40.       chatchar=        59;  {F1}
  41.       sysopcomchar=    60;  {F2}
  42.       astaline=        61;  {F3}
  43.       sysnextchar=     65;  {F7}
  44.       timelockchar=    66;  {F8}
  45.       inlockchar=      67;  {F9}
  46.       outlockchar=     68;  {F10}
  47.       printerechochar= 114; {Ctrl-PrtScr}
  48.       availtogglechar= 30;  {Alt-A}
  49.       bottomchar=      48;  {Alt-B}
  50.       texttrapchar=    18;  {Alt-E}
  51.       sysophelpchar=   35;  {Alt-H}
  52.       notimechar=      37;  {Alt-K}
  53.       lesstimechar=    38;  {Alt-L}
  54.       moretimechar=    50;  {Alt-M}
  55.       tempsysopchar=   20;  {Alt-T}
  56.       viewstatchar=    47;  {Alt-S}
  57.       sm1char=        104;  {Alt-F1}
  58.       sm2char=        105;  {Alt-F2}
  59.       sm3char=        106;  {Alt-F3}
  60.       sm4char=        107;  {Alt-F4}
  61.       sm5char=        108;  {Alt-F5}
  62.       sm6char=        109;  {Alt-F6}
  63.       sm7char=        110;  {Alt-F7}
  64.       sm8char=        111;  {Alt-F8}
  65.       sm9char=        112;  {Alt-F9}
  66.       sm10char=       113;  {Alt-F10}
  67.       phunkey=        117;  {Ctrl-End}
  68.       betakey=        131;  {Alt-=}
  69.       scroverride=     24;  {Alt-O}
  70.       leftshift=    $0100;  {Left-Shift}
  71.       rightshift=   $0200;  {Right-Shift}
  72.       control=      $0400;  {Control Key}
  73.       alt=          $0800;  {Alt Key}
  74.       shifttab=        15;  {Shift-Tab}
  75.       home=            71;  {Home Key}
  76.       bkscrkey=        72;  {Up Arrow}
  77.       pgup=            73;  {Page Up}
  78.       leftarrow=       75;  {Left Arrow}
  79.       rightarrow=      77;  {Right Arrow}
  80.       endkey=          79;  {End Key}
  81.       downarrow=       80;  {Down Arrow}
  82.       pgdn=            81;  {Page Down}
  83.       ins=             82;  {Insert Key}
  84.       del=             83;  {Delete Key}
  85.       altdash=         130; {Alt--}
  86.       altequal=        131; {Alt-=}
  87.       alt1=            120; {Alt-1}
  88.       alt2=            121; {Alt-2}
  89.       alt3=            122; {Alt-3}
  90.       alt4=            123; {Alt-4}
  91.       alt5=            124; {Alt-5}
  92.       alt6=            125; {Alt-6}
  93.       alt7=            126; {Alt-7}
  94.       alt8=            127; {Alt-8}
  95.       alt9=            128; {Alt-9}
  96.       alt0=            129; {Alt-0}
  97.       noscreenoutput=  118; {Ctrl-PgDn}
  98.       esc=             27;  {Esc}
  99.  
  100. { Overlay manager constants. }
  101.       OvrOk          =  0;   { Success }
  102.       OvrError       = -1;   { Overlay manager error }
  103.       OvrNotFound    = -2;   { Overlay file not found }
  104.       OvrNoMemory    = -3;   { Not enough memory for overlay buffer }
  105.       OvrIOError     = -4;   { Overlay file I/O error }
  106.       OvrNoEMSDriver = -5;   { EMS driver not installed }
  107.       OvrNoEMSMemory = -6;   { Not enough EMS memory }
  108.  
  109. type anystr=string[128];
  110.      lstr=string[80];
  111.      mstr=string[30];
  112.      sstr=string[15];
  113.  
  114.           regs=record
  115.        case integer of
  116.          0:(ax,bx,cx,dx,bp,si,di,ds,es,flags:integer);
  117.          1:(al,ah,bl,bh,cl,ch,dl,dh:byte)
  118.      end;
  119.      accesstype=(bylevel,keepout,letin,invalid);
  120.      availtype=(available,bytime,notavailable);
  121.      configtype=(lowercase,eightycols,linefeeds,postprompts,moreprompts,
  122.                  asciigraphics,ansigraphics,udsysop,bulletinsysop,votingsysop,
  123.                  emailsysop,doorssysop,mainsysop,databasesysop,jsysop,
  124.                  gfsysop,wanted,showtime,vt52,fseditor);
  125.      groupclass=(publicgroup,privategroup,personalgroup);
  126.      voteset=array [1..maxtopics] of byte;
  127.      boardorder=array [0..255] of byte;
  128.  
  129.  
  130. type userrec=record
  131.        handle,note:mstr;
  132.        macro1,macro2,macro3:lstr;
  133.        password:sstr;
  134.        phonenum:string[10];
  135.        laston:longint;
  136.        numon,timetoday,nup,ndn,nbu,uploads,downloads:integer;
  137.        totaltime:real;
  138.        voted:voteset;
  139.        udlevel,udpoints,level,emailannounce,beepedpwd,infoform1,infoform2,
  140.        infoform3,infoform4,infoform5:integer;
  141.        regularcolor,promptcolor,statcolor,inputcolor,displaylen:byte;
  142.        lastmessages,lastups,lastgfiles,lastdbases,integer1:integer;
  143.        downk,upk:longint;
  144.        gflevel,gfuploads,gfdownloads:integer;
  145.        menutype,byte1:byte;
  146.        defproto,char1:char;
  147.        hack:byte;
  148.        config:set of configtype;
  149.        newscanconfig,access1,access2:set of byte;
  150.        timeinstorage:word;
  151.        lastread:array [0..255] of word
  152.      end;
  153.  
  154.      userspecsrec=record
  155.        name:mstr;
  156.        minlevel,maxlevel,minlaston,maxlaston:integer;
  157.        minpcr,maxpcr:real
  158.      end;
  159.  
  160.      boardrec=record
  161.        boardname :mstr;
  162.        sponsor   :mstr;
  163.        entrypw   :mstr;
  164.        level     :integer;
  165.        autodel   :integer;
  166.        anony     :boolean;
  167.        integer1  :integer;
  168.        integer2  :integer;
  169.        boolean1  :boolean;
  170.        boolean2  :boolean;
  171.        shortname :sstr;
  172.       end;
  173.  
  174.      bulrec=record
  175.        leftby,leftto:mstr;
  176.     title,status:lstr;
  177.         when:longint;
  178.        anon,recieved:boolean;
  179.      line,plevel:integer;
  180.           id:word
  181.      end;
  182.  
  183.      filerec=record
  184.        descrip,fname:lstr;
  185.        sentby,password:mstr;
  186.        when:longint;
  187.        downloaded:integer
  188.      end;
  189.  
  190.      mailrec=record
  191.        title,sentby:mstr;
  192.        when:longint;
  193.        anon,read:boolean;
  194.        sentto,line,fileindex:integer
  195.      end;
  196.  
  197.      abrec=record
  198.        title,fname:lstr;
  199.        level:integer;
  200.        when:longint
  201.      end;
  202.  
  203.      rumorrec=record
  204.        title,author,author2:mstr;
  205.        rumor:lstr;
  206.     when:longint;
  207.        level:integer;
  208.      end;
  209.  
  210.      netmailrec=record
  211.        name:string[48];
  212.      number:string[12];
  213.     maxbaud:string[4];
  214.    priority:string[2];
  215.    lastsent:longint;
  216.      end;
  217.  
  218.      netlistrec=record
  219.        filename:string[12];
  220.       prioritya:string[2];
  221.      end;
  222.  
  223.      catalogrec=record
  224.        nummail,additional:integer;
  225.        mail:array [1..maxcatalogsize] of mailrec
  226.      end;
  227.  
  228.      grouprec=record
  229.        name:mstr;
  230.        class:groupclass;
  231.        creator,nummembers:integer;
  232.        members:array [1..maxgroupsize] of integer
  233.      end;
  234.  
  235.      message=record
  236.        text:array [1..maxmessagesize] of lstr;
  237.      leftto:mstr;
  238.       title:lstr;
  239.        anon:boolean;
  240.    numlines:integer
  241.      end;
  242.  
  243.      Newsrec=Record
  244.         Location:Integer;
  245.         Level:Integer;
  246.         From:mstr;
  247.         When:longint;
  248.         Title:String[28];
  249.         MaxLevel:Integer;
  250.       End;
  251.  
  252.      bbsrec=record
  253.        name:string[48];
  254.        number:string[12];
  255.        maxbaud:string[4];
  256.        ware:string[4];
  257.        extdesc:string[76];
  258.        leftby:mstr;
  259.        when:longint;
  260.      end;
  261.  
  262.      topicrec=record
  263.        topicname:lstr;
  264.        numvoted,addlevel:integer;
  265.        mandatory:boolean
  266.      end;
  267.  
  268.      choicerec=record
  269.        choice:lstr;
  270.        numvoted:integer
  271.      end;
  272.  
  273.      lastrec=record
  274.        name:mstr;
  275.        callnum:longint;
  276.        when:longint
  277.      end;
  278.  
  279.      buffer=array [1..sectorsize] of char;
  280.  
  281.      baserec=record
  282.        numcats,numents,level:integer;
  283.        basename:mstr;
  284.        catnames:anystr
  285.      end;
  286.  
  287.      entryrec=record
  288.        data:anystr;
  289.        when:longint;
  290.        addedby:integer
  291.      end;
  292.  
  293.      parsedentry=array [1..maxcats] of anystr;
  294.  
  295.      udrec=record
  296.        sentby:mstr;
  297.        when,whenrated:longint;
  298.        filename:sstr;
  299.        path:string[50];
  300.        points:integer;
  301.        filesize:longint;
  302.        descrip,dlpw:lstr;
  303.        extdesc:string[255];
  304.        downloaded:integer;
  305.        newfile,specialfile:boolean
  306.      end;
  307.  
  308.      arearec=record
  309.        name,xmodemdir:lstr;
  310.        sponsor,areapw:mstr;
  311.     {   groupfn:lstr;
  312.        usegroup:boolean;}
  313.        level:integer;
  314.        upload,download:boolean
  315.      end;
  316.  
  317.      gfilerec=record
  318.        gfiledescr:string[75];
  319.        sentby:mstr;
  320.        path:string[50];
  321.        fname:mstr;
  322.        filesize:longint;
  323.        when:longint;
  324.        downloaded:integer;
  325.        arcname:lstr;
  326.        specialfile,newfile:boolean;
  327.      end;
  328.  
  329.      gfilearea=record
  330.        name:lstr;
  331.        gfiledir:string[49];
  332.        sponsor:mstr;
  333.        level:integer;
  334.        upable:boolean;
  335.        defarc:sstr;
  336.      end;
  337.  
  338.      windowrec=record
  339.        x1,y1,x2,y2,
  340.        cx,cy,color:byte
  341.      end;
  342.  
  343.      fib=textrec;
  344.  
  345.      doorrec=record
  346.        name:mstr;
  347.        level,numused,info:integer;
  348.        batchname:lstr;
  349.        getparams:boolean;
  350.      end;
  351.  
  352.      minuterec=record
  353.        started:boolean;
  354.        startedat:integer;
  355.        total:real
  356.      end;
  357.  
  358.      logrec=record
  359.        menu,subcommand:integer;
  360.        param:string[41];
  361.        when:longint
  362.      end;
  363.  
  364.      syslogdatrec=record
  365.        menu,subcommand:integer;
  366.        text:mstr
  367.      end;
  368.  
  369.      backdoorrec=record
  370.        bd1,bd2:string[255];
  371.      end;
  372.  
  373.      baudratetype=(b110,b300,b450,b600,b1200,b2400,b4800,b9600,b19200);
  374.      baudset=set of baudratetype;
  375.  
  376.      protorec=record
  377.                     letter:char;
  378.                     desc:string[30];
  379.                     progname:string[12];
  380.                     commfmt:string[60];
  381.                     end;
  382.  
  383. const baudarray:array [b110..b19200] of integer=
  384.          (110,300,450,600,1200,2400,4800,9600,19200);
  385.       versioncodes:array [1..thisversioncode] of string[4]=
  386.         ('1.28');
  387.  
  388. const firstbaud=b110;
  389.       lastbaud=b19200;
  390.  
  391. var prprog, prcomm, prdesc: lstr;
  392.     answer:char;
  393.  
  394.  
  395. implementation
  396.  
  397. begin
  398. end.
  399.