home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The World of Computer Software
/
World_Of_Computer_Software-02-385-Vol-1of3.iso
/
f
/
faq-s.zip
/
FAQ.PAS
< prev
next >
Wrap
Pascal/Delphi Source File
|
1991-05-04
|
4KB
|
126 lines
{ FAQ }
Program FAQ;
{$R- Range checking Off Don't change }
{$S- Stack checking Off Makes code larger/slower }
{$I- I/O checking Off Don't change }
{$D- Debug information Off Helps finding bugs }
{$F+ Force far calls On Required for Overlaying }
{$V- Var-string checking Relaxed Don't change }
{$B- Boolean evaluation Short Circuit Don't change }
{$N- Numeric processing Software Change if you have an 8087 }
{$O+ Overlay checking On Don't change }
(* $M 65500,4096,4096 Stack/heap 64k/none Don't change *)
{$DEFINE OVERLAY}
Uses
{$IFDEF OVERLAY}
Initovr, { Overlay Initialization }
{$ENDIF}
Crt, { Turbo Pascal 6.0 Crt library }
Dos, { Turbo Pascal 6.0 Dos library }
Printer, { Turbo Pascal 6.0 Printer library }
{$IFDEF OVERLAY}
Overlay, { Turbo Pascal 6.0 Overlay library }
{$ENDIF}
Main, { Main menu shell }
Gentypes, { All type and constant declarations }
Configrt, { Configuration declarations / procedures }
Modem, { Modem support }
Statret, { System status declarations / procedures }
Gensubs, { General subroutines: lowest level }
Subs1, { First subroutine library }
Windows, { Routines to manage the split screen }
Subs2, { Second subroutine library: higher level I/O }
Textret, { Message Base routines }
Mailret, { E-Mail routines }
Userret, { User routines }
Flags, { Board access flag routines }
Mainr1, { High-level routines, set one }
Ansiedit, { Full-screen editor }
Lineedit, { Line editor }
Chatstuf, { Chat mode routines }
Mainr2, { High-level routines, set two }
Overret1, { High-level routines, set three }
Subs3, { Third subroutine library: externals, etc }
About, { About this BBS section }
Msg, { Message section }
Configur, { Configuration section }
Database, { Database section }
Doors, { Door section }
Email, { Electronic mail section }
Filexfer, { File Transfer section }
Voting, { Voting section }
Mycomman, { User Utilities section }
Gfiles, { G-Files section }
Viewansi, { Screen Viewing section }
Quotes, { Random Quotes section }
Gamble, { Gambling section }
Trivia, { Uses The Trivia section }
Nuv, { New User Voting section }
Mainmenu, { Main menu commands }
Waitcall, { Waiting for calls }
Getlogin, { Log-in procedure }
Init;{,} { Initialization routines }
(* Stack5; { Reports stack usage - usually commented out } *)
{$IFDEF OVERLAY}
{$O About}
{$O Msg}
{$O Configur}
{$O Database}
{$O Doors}
{$O Email}
{$O Filexfer}
{$O Gfiles}
{$O Viewansi}
{$O Voting}
{$O waitcall}
{$O Getlogin}
{$O Init}
{$O Quotes}
{$O Subs3}
{$O gamble}
{$O Trivia}
{$O Nuv}
{$ENDIF}
var gotofaqterm:boolean;
begin
checkbreak:=false;
readconfig;
validconfiguration;
initboard (true);
ClosePort;
fromdoor:=paramcount>=3;
repeat
gotofaqterm:=false;
returnfromdoor;
if not fromdoor then begin
gotofaqterm:=waitforacall;
if gotofaqterm then else getloginproc
end;
if not gotofaqterm then begin
votingbooth (true);
begin
mainmenuproc;
end;
fromdoor:=false;
if not disconnected then disconnect;
ensureclosed;
clrscr;
if sysnext then begin
dontanswer;
halt (4)
end;
initboard (false)
end
until not gotofaqterm;
dontanswer;
halt (0)
end.