home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / PASCAL / SYSPC22.ZIP / GENTYPES.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1989-02-16  |  5.7 KB  |  233 lines

  1. const versionnum='SYS-PC v. 2.32';
  2.       crlf=^M^J;
  3.       backsp=^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H;
  4.       normvid=#$02;
  5.       revvid=#$01;
  6.       maxusers=30000;
  7.       maxmessagesize=100;
  8.       maxlastcallers=5;
  9.       maxtopics=10;
  10.       maxcats=10;
  11.       sectorsize=512;
  12.       numsectors=10000;
  13.       maxcatalogsize=50;
  14.       maxgroupsize=50;
  15.       maxsyslogdat=125;
  16.       maxsyslogsize=1000;
  17. { All of these are extended keystroke values. }
  18.       breakoutchar=    0;   {Control-Break}
  19.       chatchar=        59;  {F1}
  20.       sysopcomchar=    60;  {F2}
  21.       sysnextchar=     65;  {F7}
  22.       timelockchar=    66;  {F8}
  23.       inlockchar=      67;  {F9}
  24.       outlockchar=     68;  {F10}
  25.       printerechochar= 114; {Ctrl-PrtSc}
  26.       availtogglechar= 30;  {Alt-A}
  27.       bottomchar=      48;  {Alt-B}
  28.       texttrapchar=    18;  {Alt-E}
  29.       sysophelpchar=   35;  {Alt-H}
  30.       notimechar=      37;  {Alt-K}
  31.       lesstimechar=    38;  {Alt-L}
  32.       moretimechar=    50;  {Alt-M}
  33.       tempsysopchar=   20;  {Alt-T}
  34.       viewstatchar=    47;  {Alt-S}
  35.  
  36. type anystr=string[255];
  37.      lstr=string[80];
  38.      mstr=string[30];
  39.      sstr=string[15];
  40.      regs=record
  41.        case integer of
  42.          0:(ax,bx,cx,dx,bp,si,di,ds,es,flags:integer);
  43.          1:(al,ah,bl,bh,cl,ch,dl,dh:byte)
  44.      end;
  45.      accesstype=(bylevel,keepout,letin,invalid);
  46.      availtype=(available,bytime,notavailable);
  47.      configtype=(lowercase,eightycols,linefeeds,postprompts,moreprompts,
  48.                  asciigraphics,ansigraphics,udsysop,bulletinsysop,votingsysop,
  49.                  emailsysop,doorssysop,mainsysop,databasesysop,wanted,
  50.                  showtime,vt52,fseditor);
  51.      groupclass=(publicgroup,privategroup,personalgroup);
  52.      voteset=array [1..maxtopics] of byte;
  53.      votset=array [1..50] of integer;
  54.      boardorder=array [0..255] of byte;
  55.      ptr=^byte;
  56.  
  57. userrec=record
  58.        handle:mstr;
  59.        password:sstr;
  60.        phonenum:string[12];
  61.        windows:boolean;
  62.        ldmns,ltmns,londa,lonti:string[8];
  63.        gfup,gfdown,numon,timetoday,nbu,uploads,downloads:integer;
  64.        totaltime:real;
  65.        voted:voteset;
  66.        lastmessages,lastups,udlevel,udpoints,level,emailannounce,beepedpwd,
  67.        gflvl:integer;
  68.        infoform:array [1..9] of integer;
  69.        regularcolor,promptcolor,statcolor,inputcolor,displaylen:byte;
  70.        config:set of configtype;
  71.        newscanconfig,access1,access2:set of byte;
  72.        votey,voten:integer;
  73.        didvote:votset;
  74.  
  75.      end;
  76.  
  77.      boardrec=record
  78.        boardname,sponsor:mstr;
  79.        level,autodel:integer;
  80.        shortname:sstr
  81.      end;
  82.  
  83.      newsrec=record
  84.        where,level:integer;
  85.        title:mstr;
  86.        date,time:string[8];
  87.      end;
  88.  
  89.      commentrec=record
  90.        num:integer;
  91.        comment:string[80];
  92.        who:mstr;
  93.        end;
  94.  
  95.      bulrec=record
  96.        title,leftby,leftto:mstr;
  97.        leftda,leftti:sstr;
  98.        senttol:string[28];
  99.        anon,ranon:boolean;
  100.        line,plevel:integer
  101.      end;
  102.  
  103.      filerec=record
  104.        descrip,fname:lstr;
  105.        sentby:mstr;
  106.        sentda,sentti:sstr;
  107.        downloaded:integer
  108.      end;
  109.  
  110.      mailrec=record
  111.        title,sentby:mstr;
  112.        sentda,sentti:sstr;
  113.        anon,read:boolean;
  114.        sentto,line,fileindex:integer
  115.      end;
  116.  
  117.      catalogrec=record
  118.        nummail,additional:integer;
  119.        mail:array [1..maxcatalogsize] of mailrec
  120.      end;
  121.  
  122.      grouprec=record
  123.        name:mstr;
  124.        class:groupclass;
  125.        creator,nummembers:integer;
  126.        members:array [1..maxgroupsize] of integer
  127.      end;
  128.  
  129.      message=record
  130.        text:array [1..maxmessagesize] of lstr;
  131.        title:mstr;
  132.        anon:boolean;
  133.        numlines:integer
  134.      end;
  135.  
  136.      topicrec=record
  137.        topicname:lstr;
  138.        numvoted,addlevel:integer;
  139.        mandatory:boolean
  140.      end;
  141.  
  142.      choicerec=record
  143.        choice:lstr;
  144.        numvoted:integer
  145.      end;
  146.  
  147.      lastrec=record
  148.        caller:real;
  149.        name:mstr;
  150.        ti,da:sstr;
  151.        baud:integer;
  152.        level:integer;
  153.      end;
  154.  
  155.      buffer=array [1..sectorsize] of char;
  156.  
  157.      baserec=record
  158.        numcats,numents,level:integer;
  159.        basename:mstr;
  160.        catnames:anystr
  161.      end;
  162.  
  163.      entryrec=record
  164.        data:anystr;
  165.        eda:sstr;
  166.        eti:string[13];
  167.        addedby:integer
  168.      end;
  169.  
  170.      parsedentry=array [1..maxcats] of anystr;
  171.  
  172.      udrec=record
  173.        sentby:mstr;
  174.        sentda,sentti:sstr;
  175.        filename:sstr;
  176.        path:string[50];
  177.        points:integer;
  178.        filesize:real;
  179.        descrip:lstr;
  180.        downloaded:integer;
  181.        newfile,specialfile,sysfile:boolean
  182.      end;
  183.  
  184.      arearec=record
  185.        name,xmodemdir:lstr;
  186.        sponsor:mstr;
  187.        level:integer;
  188.        upload:boolean;
  189.      end;
  190.  
  191.      windowrec=record
  192.        x1,y1,x2,y2,
  193.        cx,cy,color:byte
  194.      end;
  195.  
  196.      fib=record
  197.        handle,reclen,bufofs,bufsize,bufptr,bufend:integer;
  198.        path:array [1..64] of char
  199.      end;
  200.  
  201.      doorrec=record
  202.        name:mstr;
  203.        level,numused,info:integer;
  204.        batchname:lstr;
  205.        getparams:boolean;
  206.      end;
  207.  
  208.      minuterec=record
  209.        started:boolean;
  210.        startedat:integer;
  211.        total:real
  212.      end;
  213.  
  214.      logrec=record
  215.        menu,subcommand:integer;
  216.        param:string[41];
  217.        date,time:string[8]
  218.      end;
  219.  
  220.      syslogdatrec=record
  221.        menu,subcommand:integer;
  222.        text:mstr
  223.      end;
  224.  
  225.      baudratetype=(b110,b300,b450,b600,b1200,b2400,b4800,b9600);
  226.      baudset=set of baudratetype;
  227.  
  228. const baudarray:array [b110..b9600] of integer=
  229.          (110,300,450,600,1200,2400,4800,9600);
  230.  
  231. const firstbaud=b110;
  232.       lastbaud=b9600;
  233.