home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Jason Aller Floppy Collection
/
276.img
/
FORUM21S.ZIP
/
FORUM.PAS
< prev
next >
Wrap
Pascal/Delphi Source File
|
1988-03-27
|
5KB
|
125 lines
{
┌───────────────────────────────────────────────────┐
│ ┬── ┌─┐ ┬─┐ ┬ ┬ ┬─┬─┬ ┬─┐┌─┐ ┌─┐ ┐ ┌─┐ │
│ ├─ │ │ ├┬┘ │ │ │ ┴ │ ── ├─┘│ ┌─┘ │ │ │ │
│ ┴ └─┘ ┴└┘ └─┘ ┴ ┴ ┴ └─┘ └─┘ ■ ┴ └─┘ │
│ │
│ Written by Kenneth J. Duda │
│ Copyright (C) 1986 Kenneth J. Duda │
┌────────────┴───────────────────────────────────────────────────┴───────────┐
│ │
│ This program is property of Kenneth Duda. As a registered user, you may │
│ make as many copies as you wish for back-up and archival purposes only. │
│ You may also make any modifications you wish. However, you may NOT │
│ distribute this program, unmodified or modified, to people who are not │
│ registered users. If you would like to register, send $50.00 to: │
│ │
│ Forum-PC (Please make checks out to Ken Duda) │
│ 590 Vine Street Forum-PC Demo BBS: 415-327-6786 300/1200/2400 │
│ Menlo Park, CA 94025 │
│ │
└────────────────────────────────────────────────────────────────────────────┘ }
Program Forum;
{
COMPILER DIRECTIVES
Code Directive State Note
}
{$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 Makes code larger/slower }
{$T- Turbo pascal map file Off Change if you want a map file }
{$F- Force far calls Off Makes code larger/slower }
{$V- Var-string checking Relaxed Don't change }
{$B- Boolean evaluation Short Cicuit Don't change }
{$N- Numeric processing Software Change if you have an 8087 }
{$L- Link buffer Memory Change if you have enough memory }
{$M 65500,0,0 Stack/heap 64k/none Don't change }
{
FORUM-PC UNITS }
Uses
Crt, { Turbo Pascal CRT library }
Dos, { Turbo Pascal DOS library }
Printer, { Turbo Pascal Printer library }
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: higer level I/O }
textret, { Message base routines }
mailret, { E-mail routines }
userret, { User routines }
flags, { Board access flag routines } { By the way, some of }
mainr1, { High-level routines, set one } { this organization }
ansiedit, { Full-screen editor } { made a lot more }
lineedit, { Line editor } { sense when I had to }
chatstuf, { Chat mode routines } { use overlay files!! }
mainr2, { High-level routines, set two }
overret1, { High-level routines, set three }
About, { About this BBS section }
Bulletin, { Bulletin section }
Configur, { Configuration section }
Database, { Database section }
Doors, { Door section }
Email, { Electronic mail section }
Filexfer, { File transfer section }
Voting, { Voting section }
Mycomman, { You write this one }
MainMenu, { Main menu commands }
Main, { Main menu shell }
Waitcall, { Waiting for calls }
Titlepg, { Title page }
Getlogin, { Log-in procedure }
Forumtrm, { Forum-term }
Init; { Initialization routines }
{
FORUM-PC MAIN BEGIN-END BLOCK }
var gotoforumterm:boolean;
begin
checkbreak:=false;
readconfig;
validconfiguration;
initforum (true);
fromdoor:=paramcount>=3;
repeat
gotoforumterm:=false;
returnfromdoor;
if not fromdoor then begin
gotoforumterm:=waitforacall;
if gotoforumterm then forumterm else getloginproc
end;
if not gotoforumterm then begin
votingbooth (true);
mainmenuproc;
fromdoor:=false;
if not disconnected then disconnect;
ensureclosed;
clrscr;
if sysnext then begin
dontanswer;
halt(4)
end;
initforum (false)
end
until not gotoforumterm;
dontanswer;
halt(0)
end.