home *** CD-ROM | disk | FTP | other *** search
- { 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.
-