home *** CD-ROM | disk | FTP | other *** search
- {$I-}{$V-}{$R-}{$U-}{$C-}
-
- {$IGenTypes.Pas}
- {$IConfigRt.Pas}
-
-
- procedure writeconfig;
- var q:file of configsettype;
- begin
- assign (q,'Config.BBS');
- rewrite (q);
- write (q,configset);
- close (q)
- end;
-
- procedure formatconfig;
- begin
- longname[0]:=chr(0);
- shortname[0]:=chr(0);
- sysopname[0]:=chr(0);
- supportedrates:=[b1200];
- downloadrates:=supportedrates;
- defbaudrate:=1200;
- usecom:=1;
- sysoplevel:=10;
- textdir[0]:=chr(0);
- uploaddir[0]:=chr(0);
- boarddir[0]:=chr(0);
- overlaypath[0]:=chr(0);
- modemsetupstr[0]:=chr(0);
- modemhangupstr[0]:=chr(0);
- private:=false;
- autologin:=false;
- matfeed:=false;
- fixhan:=false;
- anonymouslevel:=5;
- numwelcomes:=1;
- normbotcolor:=6;
- normtopcolor:=2;
- outlockcolor:=5;
- splitcolor:=4;
- statlinecolor:=3;
- mintimeout:=4;
- dotchar:='.';
- asciidownload[0]:=chr(0);
- defudlevel:=0;
- defudpoints:=0;
- availtime[0]:=chr(0);
- unavailtime[0]:=chr(0);
- defgflevel:=0;
- udlevel2nd:=0;
- udpoints2nd:=0;
- level2nd:=2;
- postlevel:=2;
- allowdoors:=true;
- remotedoors:=false;
- vote:=false;
- gambling:=false;
- ansiwait:=true;
- udratio:=0;
- gfudratio:=0;
- writeconfig
- end;
-
- type ttypetype=(TInteger,Tsstr,Tmstr,Tlstr,TBoolean,TChar,TBaudset,
- TPath,TTime,TAttrib,Tusertime,Badtype);
- ptrset=record
- case integer of
- 0:(i:^integer);
- 1:(l:^lstr);
- 2:(b:^boolean);
- 3:(k:^char);
- 4:(baudsetptr:^baudset)
- end;
- thing=record
- text:mstr;
- descrip:lstr;
- ttype:ttypetype;
- p:ptr;
- r1,r2:integer
- end;
-
- const ttypestr:array [ttypetype] of sstr=
- ('Int','sstr','mstr','lstr','Boo','Char','Baud','Path','Time',
- 'Attrib','Usertime','!!!!????');
- colorstr:array [0..15] of mstr=
- ('Black','Blue ','Green ','Cyan ','Red ','Magenta ','Brown ','White ',
- 'Gray ','BLUE!','GREEN!','CYAN!','RED!','MAGENTA!','Yellow','WHITE!');
-
- const maxthings=100;
- dcol=30;
-
- var top,bot,page,numpages,numthings:integer;
- things:array [1..maxthings] of thing;
-
- procedure c2;
- begin
- textcolor (2)
- end;
-
- procedure c3;
- begin
- textcolor (3)
- end;
-
- procedure c4;
- begin
- textcolor (4)
- end;
-
- procedure c6;
- begin
- textcolor (6)
- end;
-
- procedure c7;
- begin
- textcolor (7)
- end;
-
- function match(a1,a2:anystr):boolean;
- var cnt:integer;
- begin
- match:=false;
- while a1[length(a1)]=' ' do a1[0]:=pred(a1[0]);
- while a2[length(a2)]=' ' do a2[0]:=pred(a2[0]);
- if length(a1)<>length(a2) then exit;
- for cnt:=1 to length(a1) do
- if upcase(a1[cnt])<>upcase(a2[cnt]) then exit;
- match:=true
- end;
-
- function yesnostr (var b:boolean):sstr;
- begin
- if b and (ord(b)<>ord(true)) then b:=true;
- if b then yesnostr:='Yes' else yesnostr:='No'
- end;
-
- function strr (n:integer):mstr;
- var q:mstr;
- begin
- str (n,q);
- strr:=q
- end;
-
- function valu (q:mstr):integer;
- var i,s:integer;
- begin
- val (q,i,s);
- if s=1
- then valu:=0
- else valu:=i
- end;
-
- procedure setptr (var p:ptr; var n);
- begin
- p:=ptr(seg(n),ofs(n))
- end;
-
- function whichpage (n:integer):integer;
- begin
- whichpage:=((n-1) div 20)+1
- end;
-
- function whichline (n:integer):integer;
- begin
- whichline:=n-20*(whichpage(n)-1)+2
- end;
-
- function getbaudstr (var q:baudset):lstr;
- var w:lstr;
- cnt:baudratetype;
- begin
- w[0]:=chr(0);
- for cnt:=firstbaud to lastbaud do
- if cnt in q then w:=w+strr(baudarray[cnt])+' ';
- if length(w)=0 then w:='None';
- getbaudstr:=w
- end;
-
- procedure writevar (n:integer);
- var pu:ptr;
- p:ptrset absolute pu;
- begin
- c2;
- pu:=things[n].p;
- case things[n].ttype of
- tinteger:write (p.i^);
- tlstr,tmstr,tsstr,tpath,ttime:write (p.l^);
- tboolean:write (yesnostr(p.b^));
- tchar:write (p.k^);
- tbaudset:write (getbaudstr (p.baudsetptr^));
- tattrib:write (colorstr[p.i^]);
- tusertime:write ('(Choose this choice to configure user daily time)')
- end;
- c6; clreol;
- writeln
- end;
-
- procedure showpage;
- var cnt:integer;
- begin
- c6; clrscr;
- write ('Page ');
- c2; write (page);
- c6; write (' of ');
- c2; write (numpages);
- c6; writeln (':');
- writeln;
- top:=(page-1)*20+1;
- bot:=top+19;
- if bot>numthings then bot:=numthings;
- for cnt:=top to bot do begin
- gotoxy (1,cnt-top+3);
- write (cnt:2,'. ',things[cnt].text,': ');
- gotoxy (dcol,wherey);
- writevar (cnt)
- end
- end;
-
- procedure gotopage (p:integer);
- begin
- if p<1 then p:=1;
- if p>numpages then p:=numpages;
- if p=page then exit;
- page:=p;
- showpage
- end;
-
- procedure readdata;
- var q:text;
- t:mstr;
-
- procedure dataerror (n:lstr);
- begin
- writeln ('Record ',numthings,': '+n);
- halt
- end;
-
- procedure illtype;
- begin
- dataerror ('Invalid type: '+t)
- end;
-
- procedure getrange (t:mstr; var r1,r2:integer);
- var sp,da,n1,n2:integer;
- begin
- sp:=pos(' ',t);
- r1:=-32767;
- r2:=32767;
- if sp=0 then exit;
- t:=copy(t,sp+1,255);
- if length(t)<1 then exit;
- da:=pos('-',t);
- if (da=1) and (length(t)=1) then exit;
- if da=0 then begin
- r1:=valu(t);
- r2:=r1;
- exit
- end;
- n1:=valu(copy(t,1,da-1));
- n2:=valu(copy(t,da+1,255));
- if da=1 then begin
- r2:=n2;
- exit
- end;
- r1:=n1;
- if da=length(t) then exit;
- r2:=n2
- end;
-
- procedure gettype (t:mstr; var tt:ttypetype);
- var sp:integer;
- fw:mstr;
- begin
- tt:=ttypetype(0);
- sp:=pos(' ',t);
- if sp=0
- then fw:=t
- else fw:=copy(t,1,sp-1);
- while tt<>badtype do
- begin
- if match(fw,ttypestr[tt]) then exit;
- tt:=succ(tt)
- end;
- tt:=badtype;
- illtype
- end;
-
- begin
- assign (q,'Config.Dat');
- reset (q);
- numthings:=0;
- if ioresult<>0 then dataerror ('File CONFIG.DAT not found!');
- while not eof(q) do begin
- numthings:=numthings+1;
- with things[numthings] do begin
- readln (q,text);
- readln (q,descrip);
- readln (q,t);
- gettype (t,ttype);
- if ttype=tinteger then getrange (t,r1,r2)
- end
- end;
- close (q)
- end;
-
- procedure assignptrs;
- var cnt:integer;
-
- procedure s (var q);
- begin
- setptr (things[cnt].p,q);
- cnt:=cnt+1
- end;
-
- begin
- cnt:=1;
- s (longname);
- s (shortname);
- s (sysopname);
- s (autologin);
- s (textdir);
- s (boarddir);
- s (uploaddir);
- s (textfiledir);
- s (overlaypath);
- s (supportedrates);
- s (downloadrates);
- s (defbaudrate);
- s (usecom);
- s (modemsetupstr);
- s (modemhangupstr);
- s (resetmodem);
- s (offhookmodem);
- s (answermodem);
- s (sysoplevel);
- s (anonymouslevel);
- s (numwelcomes);
- s (private);
- s (ansiwait);
- s (useconmode);
- s (escinmsgs);
- s (bkspinmsgs);
- s (normbotcolor);
- s (normtopcolor);
- s (outlockcolor);
- s (splitcolor);
- s (statlinecolor);
- s (usertime);
- s (mintimeout);
- s (dotchar);
- s (asciidownload);
- s (fixhan);
- s (defgflevel);
- s (defudlevel);
- s (defudpoints);
- s (level2nd);
- s (udlevel2nd);
- s (udpoints2nd);
- s (vote);
- s (forvote);
- s (xferratio);
- s (gfratio);
- s (gfudratio);
- s (udratio);
- s (nopcr);
- s (postlevel);
- s (uploadfactor);
- s (availtime);
- s (unavailtime);
- s (xmodemopentime);
- s (xmodemclosetime);
- s (unix);
- s (unixdefault);
- s (matrix);
- s (syspwrd1);
- s (syspwrd2);
- s (syspwrd3);
- s (matfeed);
- s (anonymousstr);
- s (requireforms);
- s (remotedoors);
- s (allowdoors);
- s (gambling);
- s (unarc);
- s (arcview);
- if cnt<>numthings+1 then begin
- writeln ('Error in number of items of CONFIG.DAT');
- halt
- end
- end;
-
- procedure byebye;
- begin
- clrscr;
- gotoxy (38,24);
- c3; writeln ('Bye!');
- halt
- end;
-
- procedure abortyn;
- var q:sstr;
- begin
- gotoxy (1,24);
- c4;
- write ('Confirm abort [Y/N]: ');
- c6;
- clreol;
- buflen:=1;
- c3; readln (q); c6;
- if length(q)>0 then if upcase(q[1])='Y' then byebye
- end;
-
- procedure getinput (n:integer);
- var y:integer;
- inp:lstr;
- t:thing;
- pu:ptr;
- p:ptrset absolute pu;
-
- procedure reshow;
- begin
- gotoxy (dcol,y);
- writevar (n)
- end;
-
- procedure showintrange;
- begin
- c7;
- with t do
- if r1=-32767
- then if r2=32767
- then write ('No range limitation.')
- else write ('Maximum value: ',r2)
- else if r2=32767
- then write ('Minimum value: ',r1)
- else write ('Valid values range from ',r1,' to ',r2);
- c6
- end;
-
- procedure doint;
- var n,s:integer;
- k:char;
- begin
- val (inp,n,s);
- gotoxy (1,24);
- if s<>0
- then
- begin
- c4;
- writeln ('Invalid number! A number must be from -32767 to 32767.');
- c6;
- write ('Press any key...');
- clreol;
- read (kbd,k)
- end
- else if (n>=t.r1) and (n<=t.r2)
- then p.i^:=n
- else
- begin
- c4;
- writeln ('Range error! Must be within the above limits! ');
- c6;
- write ('Press any key...');
- clreol;
- read (kbd,k)
- end
- end;
-
- procedure dostr;
- begin
- if (inp='N') or (inp='n') then inp:='';
- p.l^:=inp
- end;
-
- procedure doboolean;
- begin
- case upcase(inp[1]) of
- 'Y':p.b^:=true;
- 'N':p.b^:=false
- end
- end;
-
- procedure dochar;
- begin
- p.k^:=inp[1]
- end;
-
- procedure dopath;
- var lc:char;
- cur:lstr;
- r:regs;
- n:integer;
- begin
- lc:=inp[length(inp)];
- if (length(inp)<>1) or (upcase(lc)<>'N')
- then if (lc<>':') and (lc<>'\') then inp:=inp+'\';
- dostr;
- if inp[length(inp)]='\' then inp[0]:=pred(inp[0]);
- r.ah:=$19;
- intr ($21,r);
- getdir (r.al+1,cur);
- chdir (inp);
- n:=ioresult;
- chdir (cur);
- if n=0 then exit;
- c4; gotoxy (1,24);
- write ('Path doesn''t exist! ');
- c6; write ('Create it now? '); clreol;
- c3; readln (cur);
- if length(cur)=0 then exit;
- if upcase(cur[1])<>'Y' then exit;
- mkdir (inp);
- if ioresult=0 then exit;
- gotoxy (1,24);
- c4; write ('Error creating directory! ');
- c6; write ('Press any key...');
- clreol;
- read (kbd,lc)
- end;
-
- procedure dotime;
- var c,s,l:integer;
- d1,d2,d3,d4:char;
- ap,m:char;
-
- function digit (k:char):boolean;
- begin
- digit:=ord(k) in [48..57]
- end;
-
- begin
- l:=length(inp);
- if l=1 then begin
- if upcase(inp[1])='N' then dostr;
- exit
- end;
- if (l<7) or (l>8) then exit;
- c:=pos(':',inp);
- if c<>l-5 then exit;
- s:=pos(' ',inp);
- if s<>l-2 then exit;
- d2:=inp[c-1];
- if l=7
- then d1:='0'
- else d1:=inp[1];
- d3:=inp[c+1];
- d4:=inp[c+2];
- ap:=upcase(inp[s+1]);
- m:=upcase(inp[s+2]);
- if d1='1' then if d2>'2' then d2:='!';
- if (d1>='0') and (d1<='1') and digit(d2) and (d3>='0') and (d3<='5')
- and digit(d4) and ((ap='A') or (ap='P')) and (m='M') then dostr
- end;
-
- procedure dobaud;
- var inp:lstr;
- n:integer;
- cnt:baudratetype;
- label bfound,again;
- begin
- gotoxy (1,24);
- repeat
- gotoxy (wherex,24);
- write ('Baud rate to toggle [CR to quit]: ');
- clreol;
- buflen:=4;
- c3; readln (inp); c6;
- gotoxy (1,24);
- if length(inp)=0 then exit;
- n:=valu(inp);
- for cnt:=b110 to b9600 do if n=baudarray[cnt] then goto bfound;
- c2; write ('Not supported! '); c6;
- goto again;
- bfound:
- if cnt in p.baudsetptr^
- then p.baudsetptr^:=p.baudsetptr^-[cnt]
- else p.baudsetptr^:=p.baudsetptr^+[cnt];
- reshow;
- again:
- until 0=1
- end;
-
- procedure dousertime;
- var input:lstr;
- n:integer;
-
- procedure refresh;
- var cnt:integer;
- begin
- c6; clrscr;
- writeln('Level Time | Level Time | Level Time | Level Time | Level Time');
- writeln('-----------|------------|------------|------------|-----------');
- gotoxy (1,3);
- for cnt:=1 to 100 do begin
- write (cnt:4,': ',usertime[cnt]:4);
- if (cnt mod 5)=0 then writeln else write (' | ')
- end
- end;
-
- procedure setone (n,v:integer);
- var x,y:integer;
- begin
- x:=((n-1) mod 5)*13+7;
- y:=((n-1) div 5)+3;
- gotoxy (x,y);
- write (v:4);
- usertime[n]:=v
- end;
-
- procedure getone (n:integer);
- var x,y,v:integer;
- begin
- x:=((n-1) mod 5)*13+7;
- y:=((n-1) div 5)+3;
- gotoxy (x,y);
- write (' ');
- gotoxy (x,y);
- buflen:=4;
- c3; readln (input); c6;
- v:=valu(input);
- if (v<1) or (v>1000) then v:=usertime[n];
- setone (n,v)
- end;
-
- function getn (txt:lstr):integer;
- var input:lstr;
- begin
- gotoxy (1,24);
- write (txt,': ');
- clreol;
- buflen:=4;
- c3; readln (input); c6;
- getn:=valu(input)
- end;
-
- function getlvl (txt:lstr):integer;
- var n:integer;
- begin
- n:=getn (txt);
- if (n<1) or (n>100) then n:=0;
- getlvl:=n
- end;
-
- procedure pattern;
- var st,en,ba,se,cn:integer;
- begin
- st:=getlvl ('Starting level of pattern');
- if st=0 then exit;
- en:=getlvl ('Ending level of pattern');
- if en<st then exit;
- ba:=getn ('Time for level '+strr(st));
- if (ba<1) or (ba>1000) then exit;
- se:=getn ('Additional time per level');
- if (se<0) or (se>1000) then exit;
- cn:=st;
- repeat
- setone (cn,ba);
- if ba+se<1000
- then ba:=ba+se
- else ba:=1000;
- cn:=cn+1
- until cn>en
- end;
-
- var k:char;
- begin
- refresh;
- repeat
- repeat
- gotoxy (1,24);
- write ('Number to change, [P] for a pattern, or [Q] to quit: ');
- clreol;
- c3; readln (input); c6
- until length(input)>0;
- k:=upcase(input[1]);
- n:=valu(input);
- if (n>=1) and (n<=100) then getone(n) else
- case k of
- 'P':pattern
- end
- until k='Q';
- showpage
- end;
-
- procedure showattribhelp;
- var cnt:integer;
-
- procedure demo;
- begin
- textcolor (cnt);
- write (cnt:2,')',colorstr[cnt],' ')
- end;
-
- begin
- gotoxy (1,23);
- for cnt:=0 to 7 do demo;
- gotoxy (1,24);
- for cnt:=8 to 15 do demo;
- c6
- end;
-
- procedure doattrib;
- var cnt,v:integer;
- k:char;
- begin
- v:=valu(inp);
- if ((v=0) and (inp[1]<>'0')) or (v<0) or (v>15) then begin
- v:=-1;
- for cnt:=0 to 15 do if match (inp,colorstr[cnt]) then v:=cnt;
- if v=-1 then exit
- end;
- p.i^:=v
- end;
-
- begin
- t:=things[n];
- pu:=t.p;
- gotopage (whichpage(n));
- y:=whichline(n);
- if not (t.ttype in [tbaudset,tusertime]) then begin
- gotoxy (1,23);
- clreol;
- writeln;
- clreol;
- writeln;
- write (t.descrip);
- clreol;
- gotoxy (1,24);
- case t.ttype of
- tinteger:
- begin
- buflen:=6;
- showintrange
- end;
- tsstr,ttime:buflen:=15;
- tmstr:buflen:=30;
- tlstr,tpath:buflen:=80;
- tboolean,tchar:buflen:=1;
- tattrib:showattribhelp
- end;
- if buflen+dcol>79 then buflen:=79-dcol;
- gotoxy (dcol,y);
- clreol;
- c3; readln (inp); c6
- end else inp[0]:=^A;
- if length(inp)<>0 then
- case t.ttype of
- tinteger:doint;
- tsstr,tmstr,tlstr:dostr;
- tboolean:doboolean;
- tchar:dochar;
- tbaudset:dobaud;
- tpath:dopath;
- ttime:dotime;
- tattrib:doattrib;
- tusertime:dousertime
- end;
- reshow;
- gotoxy (1,23);
- clreol;
- writeln;
- clreol;
- writeln;
- clreol;
- t.p:=pu;
- things[n]:=t
- end;
-
- procedure changenum (ns:sstr);
- var n,s:integer;
- begin
- val (ns,n,s);
- if s<>0 then exit;
- if (n<1) or (n>numthings) then exit;
- getinput (n)
- end;
-
- procedure maybemakeconfig;
- var f:file of configsettype;
- begin
- assign (f,'Config.bbs');
- reset (f);
- if ioresult=0 then begin
- close (f);
- exit
- end;
- rewrite (f);
- fillchar (configset,sizeof(configset),0);
- write (f,configset);
- close (f)
- end;
-
- var command:sstr;
- i:integer;
- begin
- textmode (BW80);
- textcolor (6);
- writeln ('One moment...');
- readdata;
- assignptrs;
- maybemakeconfig;
- readconfig;
- i:=ioresult;
- numpages:=whichpage(numthings);
- page:=0;
- gotopage (1);
- repeat
- gotoxy (1,24);
- write ('Number, N)ext, P)revious, S)ave, or A)bort, no save: ');
- clreol;
- buflen:=4;
- c3; readln (command); c6;
- if length(command)<>0 then
- case upcase(command[1]) of
- 'N':gotopage (page+1);
- 'P':gotopage (page-1);
- 'S':begin
- writeconfig;
- byebye
- end;
- 'A':abortyn;
- else changenum (command)
- end
- until 0=1
- end.
-
- (* Types are:
- Int #-# Integer in the range specified
- Lstr 80 char string
- Mstr 30 char string
- Sstr 15 char string
- Char Single character
- Boo Boolean (y/n)
- Path Directory path
- Baud Set of baud rates
- Time Time of day
- Attrib Attribute, Black, Blue, etc.
- Usertime Special usertime per day type, doesn't print
- *)
-
- Board name, Long
- Enter the name of your bulletin board
- lstr
- Board name, Short
- Enter a shortened form of the above
- lstr
- Sysop name
- Enter your name here.
- lstr
- Sysop auto-login
- If yes, signing on local will automatically log in under the sysop's name
- Boo
- Path to message base
- The message base files are held in this sub-directory. Make sure it exists!
- path
- Path to board files
- Databases and sub-board files will use this path.
- path
- Path to ASCII uploads
- All ASCII uploads (to sub-boards) will be created in this sub-directory.
- path
- Path to text files
- This directory includes the menus, raise request, info-form, help, etc.
- path
- Path to overlay file (N)
- The overlay files will be copied here. Enter a path, or N for none.
- path
- Supported BAUD rates
-
- baud
- Download BAUD rates
-
- baud
- Default BAUD rate
- Enter the start-up baud rate (for modem setup).
- Int 110-9600
- COM# port
- Enter the COM: port to which your modem is connected. Standard value is 1.
- Int 1-2
- Modem setup text
- Text sent to the modem between callers. |=CR, ~=pause, ^x=control-char
- lstr
- Modem hangup text
- Text to hang up modem. DTR=Hang up using DTR, |=CR, ~=pause, ^x=control-char
- lstr
- Modem reset text
- Text sent to the modem to make it reset. |=CR, ~=pause, ^x=control-char
- lstr
- Modem offhook text
- Text sent to the modem to take it offhook. |=CR, '=pause, ^x=control-char
- lstr
- Modem answer text
- Text sent to modem to force carrier. |=CR, '=pause, ^x=control-char
- lstr
- CO-SYSOP level
- Choose the security level for co-sysop.
- Int 1-32767
- Anonymous level
- Enter the level required to post anonymously.
- Int 1-32767
- # of welcome files
- Enter the number of welcome files you have. Files named WELCOME.1, WELCOME.2
- Int 1-999
- Is the system private
- Enter Y or N. If Yes, new users will not be allowed.
- boo
- Ansi WaitCall Screen
- Enter Y or N. If Yes, colors will be shown on waitcall screen.
- boo
- Output to DOS CON:
- If Yes, then ANSI.SYS will work, but the colors may not. Usually No.
- boo
- Escape in messages
- If Yes, users may place "escape codes" (ANSI control) in messages. Usually No.
- boo
- Backspacing in msgs
- If Yes, users may press ^Q in their messages to produce an overprint effect.
- boo
- Normal color
- Enter the standard text color attribute. Commonly 2 (green) or 7 (white)
- Attrib
- Top split color
- Enter the attribute for the top screen half. Commonly 2 (green) or 7 (white)
- Attrib
- Output-lock color
- Attribute to use when in snoop mode. Commonly 5 (purple) or 7 (white)
- Attrib
- Split-line color
- Attribute to use for the line between the halves. Commonly 7 (white)
- Attrib
- Status line color
- Attribute to use for the bottom line. It will be in inverse mode. 7=white
- Attrib
- User time per day
-
- Usertime
- Input time out
- Number of minutes of silence from remote user until the system hangs up.
- Int 2-60
- Hidden-input character
- Character to echo when user is entering his password. Commonly ".".
- char
- End of download text
- Text to send at the end of an ASCII download. Commonly holds this BBS's name.
- lstr
- Fix Name
- Fix the Users Name so that the first letter is capitalized.
- boo
- Newuser Gfile Level
- GFile Level for newusers
- int 0-32767
- Newuser file xfer lvl
- File transfer level for new users
- Int 0-32767
- Newuser file xfer pts
- File transfer points for new users, 0 if downloads are free on your system
- Int 0-32767
- 2nd call access level
- Access level to be automatically assigned on all users' second calls
- Int 0-32767
- 2nd call xfer level
- File transfer level to be assigned on all users' second calls
- Int 0-32767
- 2nd call xfer points
- File transfer points to be assigned on all users' second calls
- Int 0-32767
- Newuser vote
- Certain users can vote on a new user.
- boo
- Vote Level
- Level for above
- int 0-32767
- Xfer Post/Call ratio
- The percent of posts/call to access transfer sect.
- Int 0-500
- Gfile Post/Call Ratio
- See Above
- int 0-500
- Gfile U/D Ratio
- Upload/download ratio for G-Files
- int 0-500
- Xfer U/D Ratio
- Upload/download ratio for Xfer Section
- int 0-500
- Exempt level
- Level to be exempt from Post/call & U/D ratios
- int 0-32767
- Bulletin post level
- Level required to post a bulletin
- Int 0-32767
- Upload factor
- When you rate a file, the uploader will get (this number * your rating) points
- Int
- Time sysop's available
- Enter time sysop becomes available for chat. Form: 8:30 am, 10:00 pm, etc.
- Time
- Time sysop isn't
- Enter time sysop becomes unavailable for chat. Form: 11:30 pm, 1:45 am, etc.
- Time
- Time file xfer opens
- Enter time the file transfer section opens. Form: 9:28 am, 12:15 pm, etc.
- Time
- Time file xfer closes
- Enter time the file transfer section closes. Form: 7:36 pm, 11:32 am, etc.
- Time
- Use Unix Login
- Have a unix type login
- boo
- Unix Logon Password
- The logon for the unix front
- mstr
- Use matrix login
- Use matrix for up to 3 systems
- boo
- System 1 password
- This password will be required before any user may log in. Enter N for none.
- mstr
- System 2 password
- Password to exit into system 2
- mstr
- System 3 password
- Password to exit into system 3
- mstr
- Allow Matrix Feedback
- Allow users to send feedback from matrix
- boo
- Anonymous string
- The other users will see this replacing the name of an anonymous poster.
- mstr
- Require info-forms
- If yes, then all users without info-forms will be required to enter them.
- boo
- Remote door maintenance
- If yes, remote co-sysops will be able to create potentially dangerous doors.
- boo
- Allow doors at all
- If yes, doors will be allowed. If not, all doors will be locked. For security.
- boo
- Allow Gambling
- If yes, gambling sub-program will be activated
- boo
- Un-Arc String
- String to unarc files. (I.E. Pkxarc)
- mstr
- Arc View String
- String for ARC-View. (I.E. PKarc v)
- mstr