home *** CD-ROM | disk | FTP | other *** search
- {$R-,S-,I-,D-,T-,F-,V-,B-,N-,L+ }
- {$M 65500,0,0 }
-
- unit gentypes;
-
- interface
-
- uses dos;
-
- const versionnum='Forum-PC 2.10';
- thisversioncode=1;
- maxusers=30000;
- maxmessagesize=100;
- maxlastcallers=20;
- maxtopics=10;
- maxcats=10;
- sectorsize=512;
- numsectors=10000;
- maxcatalogsize=50;
- maxgroupsize=50;
- maxsyslogdat=125;
- maxsyslogsize=1000;
- e_door=3;
- e_controlbreak=9;
- e_badconfig=100;
- e_fatalfileerror=90;
- e_files30=50;
- e_nomodemdrv=2;
-
- { All of these are extended keystroke values. }
- breakoutchar= 0; {Control-Break}
- chatchar= 59; {F1}
- sysopcomchar= 60; {F2}
- sysnextchar= 65; {F7}
- timelockchar= 66; {F8}
- inlockchar= 67; {F9}
- outlockchar= 68; {F10}
- printerechochar= 114; {Ctrl-PrtSc}
- availtogglechar= 30; {Alt-A}
- bottomchar= 48; {Alt-B}
- texttrapchar= 18; {Alt-E}
- sysophelpchar= 35; {Alt-H}
- notimechar= 37; {Alt-K}
- lesstimechar= 38; {Alt-L}
- moretimechar= 50; {Alt-M}
- tempsysopchar= 20; {Alt-T}
- viewstatchar= 47; {Alt-S}
-
- type anystr=string[255];
- lstr=string[80];
- mstr=string[30];
- sstr=string[15];
- accesstype=(bylevel,keepout,letin,invalid);
- availtype=(available,bytime,notavailable);
- configtype=(lowercase,eightycols,linefeeds,postprompts,moreprompts,
- asciigraphics,ansigraphics,udsysop,bulletinsysop,votingsysop,
- emailsysop,doorssysop,mainsysop,databasesysop,wanted,
- showtime,vt52,fseditor);
- groupclass=(publicgroup,privategroup,personalgroup);
- voteset=array [1..maxtopics] of byte;
- boardorder=array [0..255] of byte;
-
- type userrec=record
- handle:mstr;
- password:sstr;
- phonenum:string[10];
- laston:longint;
- numon,timetoday,nup,ndn,nbu,uploads,downloads:integer;
- totaltime:real;
- voted:voteset;
- udlevel,udpoints,level,emailannounce,beepedpwd,infoform:integer;
- regularcolor,promptcolor,statcolor,inputcolor,displaylen:byte;
- config:set of configtype;
- newscanconfig,access1,access2:set of byte;
- lastread:array [0..255] of word
- end;
-
- userspecsrec=record
- name:mstr;
- minlevel,maxlevel,minlaston,maxlaston:integer;
- minpcr,maxpcr:real
- end;
-
- boardrec=record
- boardname,sponsor:mstr;
- level,autodel:integer;
- shortname:sstr
- end;
-
- bulrec=record
- title,leftby:mstr;
- when:longint;
- anon:boolean;
- line,plevel:integer;
- id:word
- end;
-
- filerec=record
- descrip,fname:lstr;
- sentby:mstr;
- when:longint;
- downloaded:integer
- end;
-
- mailrec=record
- title,sentby:mstr;
- when:longint;
- anon,read:boolean;
- sentto,line,fileindex:integer
- end;
-
- abrec=record
- title,fname:lstr;
- level:integer;
- when:longint
- end;
-
- catalogrec=record
- nummail,additional:integer;
- mail:array [1..maxcatalogsize] of mailrec
- end;
-
- grouprec=record
- name:mstr;
- class:groupclass;
- creator,nummembers:integer;
- members:array [1..maxgroupsize] of integer
- end;
-
- message=record
- text:array [1..maxmessagesize] of lstr;
- title:mstr;
- anon:boolean;
- numlines:integer
- end;
-
- topicrec=record
- topicname:lstr;
- numvoted,addlevel:integer;
- mandatory:boolean
- end;
-
- choicerec=record
- choice:lstr;
- numvoted:integer
- end;
-
- lastrec=record
- name:mstr;
- callnum:longint;
- when:longint
- end;
-
- buffer=array [1..sectorsize] of char;
-
- baserec=record
- numcats,numents,level:integer;
- basename:mstr;
- catnames:anystr
- end;
-
- entryrec=record
- data:anystr;
- when:longint;
- addedby:integer
- end;
-
- parsedentry=array [1..maxcats] of anystr;
-
- udrec=record
- sentby:mstr;
- when,whenrated:longint;
- filename:sstr;
- path:string[50];
- points:integer;
- filesize:longint;
- descrip:lstr;
- downloaded:integer;
- newfile,specialfile:boolean
- end;
-
- arearec=record
- name,xmodemdir:lstr;
- sponsor:mstr;
- level:integer
- end;
-
- windowrec=record
- x1,y1,x2,y2,
- cx,cy,color:byte
- end;
-
- fib=textrec;
-
- doorrec=record
- name:mstr;
- level,numused,info:integer;
- batchname:lstr;
- getparams:boolean;
- end;
-
- minuterec=record
- started:boolean;
- startedat:integer;
- total:real
- end;
-
- logrec=record
- menu,subcommand:integer;
- param:string[41];
- when:longint
- end;
-
- syslogdatrec=record
- menu,subcommand:integer;
- text:mstr
- end;
-
- baudratetype=(b110,b300,b450,b600,b1200,b2400,b4800,b9600);
- baudset=set of baudratetype;
-
- const baudarray:array [b110..b9600] of integer=
- (110,300,450,600,1200,2400,4800,9600);
- versioncodes:array [1..thisversioncode] of string[4]=
- ('2.10');
-
- const firstbaud=b110;
- lastbaud=b9600;
-
- implementation
-
- begin
- end.