From 7f2f256f2faa2e17d6e55e1f60afa1b3576ba55e Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Sun, 19 Nov 2000 00:59:58 +0000 Subject: [PATCH] Obsolete. --- init16d3.pas | 824 -------------------------------------------- init16e1.pas | 958 --------------------------------------------------- 2 files changed, 1782 deletions(-) delete mode 100644 init16d3.pas delete mode 100644 init16e1.pas diff --git a/init16d3.pas b/init16d3.pas deleted file mode 100644 index b53c1f1..0000000 --- a/init16d3.pas +++ /dev/null @@ -1,824 +0,0 @@ -program init; - -{$A+,B+,D-,E+,F+,I+,L+,N-,O+,R-,S+,V-} -{$M 50000,0,90000} { Declared here suffices for all Units as well! } - -uses - crt,dos, - myio, - common; - -{$I rec16d3.pas} - -var - systatf:file of systatrec; - systat:systatrec; - uf:file of userrec; - u:userrec; - sf:file of smalrec; - sr:smalrec; - bf:file of boardrec; - br:boardrec; - uff:file of ulrec; - ufr:ulrec; - xp:file of expro; - xpr:expro; - zf:file of zlogt; - zfr:zlogt; - mailfile:file of mailrec; - mr:mailrec; - lcallf:file of lcallers; - lcall:lcallers; - tfilf:file of gft; - tfil:gft; - verbf:file of verbrec; - vr:verbrec; - vdata:file of vdatar; - vd:vdatar; - smf:file of smr; - sm:smr; - msr:messagerec; - ulff:file of ulfrec; - ulffr:ulfrec; - - curdir:string; - path:array[1..5] of string; - found:boolean; - dirinfo:searchrec; - i,j,k:integer; - c:char; - -function yn:boolean; -var c:char; - b:boolean; -begin - repeat c:=upcase(readkey) until c in ['Y','N',^M]; - case c of 'Y':b:=TRUE; else b:=FALSE; end; - write(syn(b)); - yn:=b; -end; - -function pynq(s:string):boolean; -begin - textcolor(4); write(s); - textcolor(11); pynq:=yn; -end; - -procedure prt(s:string); -begin - textcolor(9); write(s); -end; - -procedure star(s:string); -begin - textcolor(9); write('þ '); - textcolor(11); writeln(s); -end; - -procedure ttl(s:string); -begin - writeln; - textcolor(9); write('ÄÄ['); - textbackground(1); textcolor(15); - write(' '+s+' '); - textbackground(0); textcolor(9); - write(']'); - repeat write('Ä') until wherex=80; - writeln; -end; - -procedure movefile(srcname,destpath:string); -var buffer:array[1..16384] of byte; - dfs,nrec:integer; - src,dest:file; - - procedure dodate; - var r:registers; - od,ot,ha:integer; - begin - srcname:=srcname+#0; - destpath:=destpath+#0; - with r do begin - ax:=$3d00; ds:=seg(srcname[1]); dx:=ofs(srcname[1]); msdos(dos.registers(r)); - ha:=ax; bx:=ha; ax:=$5700; msdos(dos.registers(r)); - od:=dx; ot:=cx; bx:=ha; ax:=$3e00; msdos(dos.registers(r)); - ax:=$3d02; ds:=seg(destpath[1]); dx:=ofs(destpath[1]); msdos(dos.registers(r)); - ha:=ax; bx:=ha; ax:=$5701; cx:=ot; dx:=od; msdos(dos.registers(r)); - ax:=$3e00; bx:=ha; msdos(dos.registers(r)); - end; - end; - -begin - star('Moving "'+srcname+'" to "'+destpath+'"'); - destpath:=destpath+srcname; - assign(src,srcname); - {$I-} reset(src,1); {$I+} - if ioresult<>0 then begin - writeln; - star('"'+srcname+'": File not found.'^G^G); - halt(1); - end else begin - dfs:=freek(exdrv(destpath)); - - {rcg11172000 don't have LONGfilesize()...} - {if trunc(longfilesize(src)/1024.0)+1>=dfs then begin} - if trunc(filesize(src)/1024.0)+1>=dfs then begin - writeln; - star('"'+srcname+'": Disk full.'); - halt(1); - end else begin - assign(dest,destpath); rewrite(dest,1); - repeat - blockread(src,buffer,16384,nrec); - blockwrite(dest,buffer,nrec); - until (nrec<16384); - close(dest); - close(src); - dodate; - erase(src); - end; - end; -end; - -procedure ffile(fn:string); -begin - findfirst(fn,anyfile,dirinfo); - found:=(doserror=0); -end; - -procedure nfile; -begin - findnext(dirinfo); - found:=(doserror=0); -end; - -procedure movefiles(srcname,destpath:string); -begin - ffile(srcname); - while found do begin - movefile(dirinfo.name,destpath); - nfile; - end; -end; - - -procedure make_paths; -var s:string; -begin - for i:=1 to 4 do begin - while copy(path[i],length(path[i]),1)='\' do - path[i]:=copy(path[i],1,length(path[i])-1); - case i of 1:s:='GFILES'; 2:s:='MSGS'; 3:s:='MENUS'; 4:s:='TFILES'; end; - star(s+' path ("'+fexpand(path[i])+'")'); - {$I-} mkdir(fexpand(path[i])); {$I+} - if ioresult<>0 then begin - writeln; - star('Error creating directory "'+fexpand(path[i])+'"'); - halt(1); - end; - path[i]:=path[i]+'\'; - end; -end; - -procedure make_status_dat; -begin - with systat do begin - bbsname:='Telegard BBS'; - bbsphone:='000-000-0000'; - sysopfirst:='System'; - sysoplast:='Operator'; - boardpw:=''; - sysoppw:='SYSOP'; - bbspw:='MATRIX'; - closedsystem:=FALSE; - matrix:=FALSE; - alias:=TRUE; - clearmsg:=TRUE; - fone:=TRUE; - multitask:=FALSE; - bwindow:=TRUE; - lock300:=FALSE; - wantquote:=TRUE; {* /// *} - mcimsg:=TRUE; {* /// *} - special:=TRUE; - localsec:=FALSE; - autominlogon:=TRUE; - bullinlogon:=TRUE; - lcallinlogon:=TRUE; - autochatopen:=TRUE; - with hmsg do begin ltr:='A'; number:=-32766; ext:=1; end; - {* A-32767.1 is the "Greetings from Telegard" message *} - tfiledate:='04/21/89'; - lastdate:='04/21/89'; - users:=1; - callernum:=0; - activetoday:=0; - callstoday:=0; - msgposttoday:=0; - emailtoday:=0; - fbacktoday:=0; - uptoday:=0; - newuk:=0; - newusertoday:=0; - dntoday:=0; - newdk:=0; - gfilepath:=path[1]; - msgpath:=path[2]; - menupath:=path[3]; - tfilepath:=path[4]; - lowtime:=0; hitime:=0; - dllowtime:=0; dlhitime:=0; - b300lowtime:=0; b300hitime:=0; - b300dllowtime:=0; b300dlhitime:=0; - app:=1; - guestuser:=-1; - timeoutbell:=2; - timeout:=5; - sysopcolor:=4; usercolor:=3; - bsdelay:=20; - tosysopdir:=0; - for i:=1 to 9 do sysopmacro[i]:=''; - comport:=1; - maxbaud:=1200; - init:='ATH0Q0V0E0M0X1S0=0S2=1S10=40&C1'; - hangup:='ATH'; - offhook:='ATH1'; - answer:='ATA'; - for i:=1 to 2 do - for j:=0 to 4 do begin - case i of - 1:case j of 0:k:=1; 1:k:=5; 2:k:=10; 3:k:=0; 4:k:=13; end; - 2:case j of 0:k:=0; 1:k:=15; 2:k:=16; 3:k:=0; 4:k:=17; end; - end; - resultcode[i][j]:=k; - end; - nocarrier:=3; - nodialtone:=6; - busy:=7; - nocallinittime:=30; - tries:=4; - newsl:=20; newdsl:=20; - newar:=[]; - newac:=[rpostan,rvoting]; - newfp:=0; - autosl:=50; autodsl:=50; - autoar:=[]; - autoac:=[]; - ansiq:='Display ANSI logon? '; - engage:='@M^3The SysOp brings you into chat!'; - endchat:='^3The SysOp returns you to the BBS....@M'; - sysopin:='^3The SysOp is probably around!'; - sysopout:='^3The SysOp is NOT here, or doesn''t want to chat'; - note[1]:='Enter your Telegard NAME or USER NUMBER'; - note[2]:='* NEW USERS, enter "NEW" *'; - lprompt:='Logon : '; - wait:='^3{-^9Please Wait^3-}'; - pause:='(* pause *)'; - msg1:='Enter message now. You have ^3@X^1 lines maximum.'; - msg2:='Enter ^3/S^1 to save. ^3/?^1 for a list of commands.'; - new1:='^7[^5@Y ^7- ^5@W msgs^7] ^4NewScan began.@M'; - new2:='^7[^5@Y ^7- ^5@W msgs^7] ^4NewScan complete.@M'; - read:='^3[^1@Y^3]@M^5[@U] ^4Read (1-@W,,T,Q,P,A,R,B,W,D) : '; - auto1:='^5AutoMessage by: '; - autom:='-'; - echoc:='X'; - - uldlratio:=TRUE; - fileptratio:=FALSE; - fileptcomp:=3; - fileptcompbasesize:=10; - - for i:=0 to 255 do begin - case i of 0..9:k:=1; 10..19:k:=10; 20..29:k:=20; 30..39:k:=40; - 40..49:k:=50; 50..59:k:=80; 60..69:k:=90; 70..79:k:=100; - 80..89:k:=110; 90..99:k:=120; 100..199:k:=130; - 200..239:k:=150; 240..249:k:=200; 250:k:=250; - 251..255:k:=6000; end; timeallow[i]:=k; - case i of 200..255:k:=20; 100..199:k:=15; 50..99:k:=10; - 30..49:k:=5; 20..29:k:=3; else k:=1; end; callallow[i]:=k; - case i of 60..255:k:=5; 20..59:k:=3; else k:=2; end; dlratio[i]:=k; - case i of 60..255:k:=10; 20..59:k:=5; else k:=2; end; dlkratio[i]:=k; - postratio[i]:=100; - end; - - normpubpost:=11; anonpubpost:=100; anonpubread:=100; - normprivpost:=11; anonprivpost:=100; anonprivread:=100; - maxpubpost:=20; maxprivpost:=20; - maxfback:=5; maxchat:=3; - maxwaiting:=15; csmaxwaiting:=50; - maxlines:=120; csmaxlines:=160; - - sop:=255; csop:=250; - msop:=199; fsop:=230; - spw:=250; seepw:=255; - nodlratio:=255; nopostratio:=200; - nofilepts:=255; seeunval:=50; - dlunval:=230; ulrefund:=100; - - filearctype:=1; - filearccomment:=bbsname+' '+bbsphone; - - for i:=1 to 4 do - with filearcinfo[i] do - case i of - 1:begin - ext:='ZIP'; - listline:='/1'; - arcline:='PKZIP -aeb4 @F'; - unarcline:='PKUNZIP @F'; - testline:='PKUNZIP -t @F'; - cmtline:='PKZIP -z @F'; - succlevel:=0; - end; - 2:begin - ext:='ARC'; - listline:='/2'; - arcline:='PKPAK a @F'; - unarcline:='PKUNPAK @F'; - testline:='PKUNPAK -t @F'; - cmtline:='PKPAK x @F'; - succlevel:=0; - end; - 3:begin - ext:='ZOO'; - listline:='/3'; - arcline:='ZOO aP: @F *.*'; - unarcline:='ZOO x @F'; - testline:='ZOO xNd @F'; - cmtline:='ZOO cA @F'; - succlevel:=0; - end; - 4:begin - ext:='PAK'; - listline:='/2'; - arcline:='PAK a @F'; - unarcline:='PAK e @F'; - testline:=''; - cmtline:=''; - succlevel:=-1; - end; - end; - filearcinfo[5].ext:=''; - - yourinfoinlogon:=TRUE; - localscreensec:=FALSE; - globaltrap:=FALSE; - snowchecking:=FALSE; - - for i:=1 to 198 do res[i]:=0; - end; - assign(systatf,'status.dat'); - rewrite(systatf); write(systatf,systat); close(systatf); -end; - -procedure make_user_lst; -const dcols:clrs=((15,7,7,15,15,15,112,7,143,7),(15,3,1,11,9,14,31,4,140,10)); -begin - with u do begin - name:='SYSOP'; - realname:='System Operator'; - pw:='SYSOP'; - ph:='000-000-0000'; - firston:='04/21/89'; - laston:='04/21/89'; - street:=''; - citystate:=''; - zipcode:=''; - computer:='IBM Compatible'; - occupation:=''; - wherebbs:=''; - note:='Change these stats to yours.'; - lockedout:=FALSE; - deleted:=FALSE; - lockedfile:=''; - ac:=[onekey,wordwrap,pause,novice,ansi,color, - smw, {* short message waiting, in SHORTMSG.DAT *} - fnodlratio,fnopostratio,fnofilepts,fnodeletion]; - for c:='A' to 'G' do ar:=ar+[c]; - with qscan[1] do begin ltr:='A'; number:=-32767; ext:=1; end; - for i:=2 to maxboards do qscan[i]:=qscan[1]; - for i:=1 to maxboards do qscn[i]:=TRUE; - dlnscn:=[]; - for i:=0 to maxuboards do dlnscn:=dlnscn+[i]; - for i:=1 to 2 do macro[i]:=''; - for i:=1 to 20 do vote[i]:=0; - age:=99; - sex:='M'; - ttimeon:=0.0; - uk:=0.0; - dk:=0.0; - uploads:=0; - downloads:=0; - loggedon:=0; - tltoday:=600; - msgpost:=0; - emailsent:=0; - feedback:=0; - forusr:=0; - filepoints:=0; - waiting:=1; {* A-32767.1 -- "Greetings from Telegard" message *} - linelen:=80; - pagelen:=23; {* to make room for SysOp window when on.. *} - ontoday:=0; - illegal:=0; - sl:=255; - dsl:=255; - cols:=dcols; - lastmsg:=1; - lastfil:=0; - credit:=0.0; - timebank:=0; - for i:=1 to 5 do boardsysop[i]:=255; - -{* NEW STUFF *} - - trapactivity:=FALSE; - trapseperate:=FALSE; - -{* NEW STUFF *ENDS* *} - - for i:=1 to 70 do res[i]:=0; - end; - assign(uf,'user.lst'); - rewrite(uf); - seek(uf,0); write(uf,u); - seek(uf,1); write(uf,u); - close(uf); -end; - -procedure make_names_lst; -begin - with sr do begin - name:='SYSOP'; - number:=1; - end; - assign(sf,'names.lst'); - rewrite(sf); - seek(sf,0); write(sf,sr); - seek(sf,1); write(sf,sr); - close(sf); -end; - -procedure make_boards_dat; -begin - with br do begin - name:='General Messages'; - filename:='GENERAL'; - sl:=30; - maxmsgs:=50; - pw:=''; - anonymous:=no; - ar:='@'; - key:=#0; - postsl:=30; - end; - assign(bf,'boards.dat'); - rewrite(bf); - seek(bf,0); write(bf,br); - close(bf); -end; - -procedure make_uploads_dat; -begin - assign(uff,'uploads.dat'); - rewrite(uff); - with ufr do begin - name:='SysOp directory'; - filename:='SYSOP'; - dlpath:=curdir+'\DLOADS\SYSOP\'; - noratio:=FALSE; - sl:=255; - dsl:=255; - namesl:=255; - ar:='@'; - maxfiles:=999; - agereq:=1; - password:=''; - end; - write(uff,ufr); - with ufr do begin - name:='Miscellaneous'; - filename:='MISC'; - dlpath:=curdir+'\DLOADS\MISC\'; - noratio:=FALSE; - sl:=30; - dsl:=30; - namesl:=10; - ar:='@'; - maxfiles:=999; - agereq:=1; - password:=''; - end; - write(uff,ufr); close(uff); -end; - -procedure make_protocol_dat; -begin - assign(xp,'protocol.dat'); - rewrite(xp); - for i:=1 to 11 do - with xpr do begin - rcmd:=''; scmd:=''; - rul:=FALSE; rdl:=FALSE; - xferok:=-1; - case i of - 1:begin descr:='Ascii'; key:='A'; ptype:=1; rul:=TRUE; end; - 2:begin descr:='Xmodem'; key:='X'; ptype:=2; end; - 3:begin descr:='Xmodem CRC'; key:='C'; ptype:=3; end; - 4:begin descr:='Ymodem'; key:='Y'; ptype:=4; end; - 5:begin descr:='Ymodem'; key:='Y'; ptype:=5; rul:=TRUE; end; - 6:begin - descr:='Zmodem'; - key:='Z'; - ptype:=6; - rcmd:='dsz port @2 speed @1 rz @3'; - scmd:='dsz port @2 speed @1 sz @3'; - xferok:=0; - end; - 7:begin - descr:='Zmodem'; - key:='Z'; - ptype:=7; - rcmd:='dsz port @2 speed @1 rz'; - scmd:='dsz port @2 speed @1 @@4'; - xferok:=0; -rul:=TRUE; - end; - 8:begin - descr:='Lynx'; - key:='L'; - ptype:=6; - rcmd:='lynx R @3 /@2 /@1'; - scmd:='lynx S @3 /@2 /@1'; - xferok:=0; - end; - 9:begin - descr:='Lynx'; - key:='L'; - ptype:=7; - rcmd:='lynx R /@2 /@1'; - scmd:='lynx S /@2 /@1 @3'; - xferok:=0; -rul:=TRUE; - end; - 10:begin - descr:='Jmodem'; - key:='J'; - ptype:=6; - rcmd:='jmodem R@2 @3'; - scmd:='jmodem S@2 @3'; - xferok:=-1; - end; - 11:begin - descr:='Megalink'; - key:='M'; - ptype:=6; - rcmd:='mlink PORT @2 SPEED @1 RM @3'; - scmd:='mlink PORT @2 SPEED @1 SM @3'; - xferok:=0; - end; - end; - write(xp,xpr); - end; - close(xp); -end; - -procedure make_zlog_dat; -begin - with zfr do begin - date:='04/21/89'; - active:=0; - calls:=0; - post:=0; - email:=0; - fback:=0; - up:=0; - end; - assign(zf,'zlog.dat'); - rewrite(zf); write(zf,zfr); - zfr.date:=''; - for i:=1 to 96 do write(zf,zfr); - close(zf); -end; - -procedure make_email_dat; -begin - with mr do begin - title:='Greetings from Telegard'; - from:=1; destin:=1; - with msg do begin ltr:='A'; number:=-32767; ext:=1; end; - mage:=255; - end; - mr.date:=daynum(date); - assign(mailfile,'email.dat'); - rewrite(mailfile); write(mailfile,mr); close(mailfile); -end; - -procedure make_laston_dat; -begin - with lcall do begin - callernum:=0; - name:='Eric Oman'; - number:=1; - end; - assign(lcallf,'laston.dat'); - rewrite(lcallf); write(lcallf,lcall); - lcall.callernum:=-1; - for i:=1 to 9 do write(lcallf,lcall); - close(lcallf); -end; - -procedure make_gfiles_dat; -begin - assign(tfilf,'gfiles.dat'); - rewrite(tfilf); - for i:=0 to 1 do begin - with tfil do - case i of - 0:begin - num:=1; {* 1 entry total *} - title:=''; - filen:=''; - ar:='@'; - gdate:='04/21/89'; - gdaten:=daynum(gdate); - end; - 1:begin - num:=0; {* SL level *} - title:='Miscellaneous'; - filen:=#1#0#0#0#0#0; - ar:='@'; - gdate:='04/21/89'; - gdaten:=daynum(gdate); - end; - end; - write(tfilf,tfil); - end; - close(tfilf); -end; - -procedure make_verbose_dat; -begin - with vr do - for i:=1 to 4 do descr[i]:=''; - assign(verbf,'verbose.dat'); - rewrite(verbf); write(verbf,vr); close(verbf); -end; - -procedure make_voting_dat; -begin - with vd do begin - question:='<< No Question >>'; - numa:=0; - for i:=0 to 9 do - with answ[i] do begin - if i<>0 then ans:='Selection '+chr(i+48) else ans:='No Comment'; - numres:=0; - end; - end; - assign(vdata,'voting.dat'); - rewrite(vdata); - for i:=0 to 19 do write(vdata,vd); - close(vdata); -end; - -procedure make_shortmsg_dat; -begin - with sm do begin - msg:='Telegard files initialized on '+date+' '+time+'.'; - destin:=1; - end; - assign(smf,'shortmsg.dat'); - rewrite(smf); write(smf,sm); close(smf); -end; - -procedure make_mboard(s:string); -var f:file; -begin - msr.message.number:=0; - assign(f,s+'.BRD'); - rewrite(f,sizeof(messagerec)); blockwrite(f,msr,1); close(f); -end; - -procedure make_fboard(s:string); -begin - ulffr.blocks:=0; - assign(ulff,s+'.DIR'); - rewrite(ulff); write(ulff,ulffr); close(ulff); -end; - -procedure dostuff; -begin - ttl('Creating Telegard directory paths'); - make_paths; - ttl('Creating Telegard data files'); - make_status_dat; - make_user_lst; - make_names_lst; - make_boards_dat; - make_uploads_dat; - make_protocol_dat; - make_zlog_dat; - make_email_dat; - make_laston_dat; - make_gfiles_dat; - make_verbose_dat; - make_voting_dat; - make_shortmsg_dat; - make_mboard('general'); - make_fboard('sysop'); - make_fboard('misc'); - ttl('Moving data files into GFILES directory'); - movefile('user.lst',path[1]); - movefile('names.lst',path[1]); - movefile('boards.dat',path[1]); - movefile('email.dat',path[1]); - movefile('gfiles.dat',path[1]); - movefile('laston.dat',path[1]); - movefile('protocol.dat',path[1]); - movefile('shortmsg.dat',path[1]); - movefile('uploads.dat',path[1]); - movefile('verbose.dat',path[1]); - movefile('voting.dat',path[1]); - movefile('zlog.dat',path[1]); - movefiles('*.BRD',path[1]); - movefiles('*.DIR',path[1]); - ttl('Moving miscellaneous text files into GFILES directory'); - movefiles('*.ANS',path[1]); - movefiles('*.MSG',path[1]); - movefiles('*.TUT',path[1]); - movefile('computer.txt',path[1]); - ttl('Moving message file into MSGS directory'); - movefile('a-32767.1',path[2]); - ttl('Moving menu files into MENUS directory'); - movefiles('*.MNU',path[3]); -end; - -begin - infield_out_fgrd:=11; - infield_out_bkgd:=0; - infield_inp_fgrd:=15; - infield_inp_bkgd:=1; - - clrscr; - gotoxy(1,1); textbackground(1); textcolor(15); - clreol; write(' Initialization Utility for Telegard version '+ver); - textbackground(0); textcolor(7); - window(1,2,80,25); - writeln; - assign(systatf,'status.dat'); - {$I-} reset(systatf); {$I+} - if ioresult=0 then begin - textcolor(28); write('WARNING!!'); - textcolor(14); writeln(' "STATUS.DAT" file already exists..'); - writeln('Telegard has already been initialized!'); - writeln('If you proceed, ALL DATA FILES WILL BE ERASED AND INITIALIZED!!!'); - writeln; - if not pynq('Proceed? ') then halt(1); - writeln; - end; - - getdir(0,curdir); - path[1]:=curdir+'\GFILES\'; - path[2]:=curdir+'\MSGS\'; - path[3]:=curdir+'\MENUS\'; - path[4]:=curdir+'\TFILES\'; - - textcolor(14); - writeln; - writeln('You will now be prompted several times for names of directorys'); - writeln('that will be used by Telegard. Each directory will be created'); - writeln('and the appropriate files will be moved there-in.'); - writeln; - writeln('GFILES pathname. This is the directory where the Telegard data'); - writeln('files and miscellaneous Telegard text files will be located.'); - writeln; - prt('GFILES dirname: '); infielde(path[1],60); writeln; writeln; - - textcolor(14); - writeln('MSGS pathname. This is the directory where the Telegard message'); - writeln('files to be used in the message section will be located.'); - writeln; - prt('MSGS dirname: '); infielde(path[2],60); writeln; writeln; - - textcolor(14); - writeln('MENUS pathname. This is the directory where the Telegard menu'); - writeln('files will be located.'); - writeln; - prt('MENUS dirname: '); infielde(path[3],60); writeln; writeln; - - textcolor(14); - writeln('TFILES pathname. This is the directory where the Telegard'); - writeln('"text file section" text files will be located in.'); - writeln; - prt('TFILES dirname: '); infielde(path[4],60); writeln; writeln; - - clrscr; - - dostuff; - - writeln; - star('Telegard BBS installed and initialized successfully!'); - star('This program, "INIT.EXE", can now be deleted.'); - star('Thanks for trying Telegard!'); -end. diff --git a/init16e1.pas b/init16e1.pas deleted file mode 100644 index 56275d5..0000000 --- a/init16e1.pas +++ /dev/null @@ -1,958 +0,0 @@ -program init; - -{$A+,B+,D-,E+,F+,I+,L+,N-,O+,R-,S+,V-} -{$M 50000,0,90000} { Declared here suffices for all Units as well! } - -uses - crt,dos, - myio, - common; - -{$I rec16e1.pas} - -var - systatf:file of systatrec; - systat:systatrec; - uf:file of userrec; - u:userrec; - sf:file of smalrec; - sr:smalrec; - bf:file of boardrec; - br:boardrec; - uff:file of ulrec; - ufr:ulrec; - xp:file of expro; - xpr:expro; - zf:file of zlogt; - zfr:zlogt; - mailfile:file of mailrec; - mr:mailrec; - lcallf:file of lcallers; - lcall:lcallers; - tfilf:file of gft; - tfil:gft; - verbf:file of verbrec; - vr:verbrec; - vdata:file of vdatar; - vd:vdatar; - smf:file of smr; - sm:smr; - msr:messagerec; - ulff:file of ulfrec; - ulffr:ulfrec; - evf:file of eventrec; - evr:eventrec; - macrf:file of macrorec; - macr:macrorec; - - curdir:string; - path:array[1..7] of string; - found:boolean; - dirinfo:searchrec; - i,j,k:integer; - c:char; - -function yn:boolean; -var c:char; - b:boolean; -begin - repeat c:=upcase(readkey) until c in ['Y','N',^M]; - case c of 'Y':b:=TRUE; else b:=FALSE; end; - write(syn(b)); - yn:=b; -end; - -function pynq(s:string):boolean; -begin - textcolor(4); write(s); - textcolor(11); pynq:=yn; -end; - -procedure prt(s:string); -begin - textcolor(9); write(s); -end; - -procedure star(s:string); -begin - textcolor(9); write('þ '); - textcolor(11); writeln(s); -end; - -procedure ttl(s:string); -begin - writeln; - textcolor(9); write('ÄÄ['); - textbackground(1); textcolor(15); - write(' '+s+' '); - textbackground(0); textcolor(9); - write(']'); - repeat write('Ä') until wherex=80; - writeln; -end; - -procedure movefile(srcname,destpath:string); -var buffer:array[1..16384] of byte; - dfs,nrec:integer; - src,dest:file; - - procedure dodate; - var r:registers; - od,ot,ha:integer; - begin - srcname:=srcname+#0; - destpath:=destpath+#0; - with r do begin - ax:=$3d00; ds:=seg(srcname[1]); dx:=ofs(srcname[1]); msdos(dos.registers(r)); - ha:=ax; bx:=ha; ax:=$5700; msdos(dos.registers(r)); - od:=dx; ot:=cx; bx:=ha; ax:=$3e00; msdos(dos.registers(r)); - ax:=$3d02; ds:=seg(destpath[1]); dx:=ofs(destpath[1]); msdos(dos.registers(r)); - ha:=ax; bx:=ha; ax:=$5701; cx:=ot; dx:=od; msdos(dos.registers(r)); - ax:=$3e00; bx:=ha; msdos(dos.registers(r)); - end; - end; - -begin - star('Moving "'+srcname+'" to "'+destpath+'"'); - destpath:=destpath+srcname; - assign(src,srcname); - {$I-} reset(src,1); {$I+} - if ioresult<>0 then begin - writeln; - star('"'+srcname+'": File not found.'^G^G); - halt(1); - end else begin - dfs:=freek(exdrv(destpath)); - - {rcg11172000 don't have LONGfilesize()...} - {if trunc(longfilesize(src)/1024.0)+1>=dfs then begin} - if trunc(filesize(src)/1024.0)+1>=dfs then begin - writeln; - star('"'+srcname+'": Disk full.'); - halt(1); - end else begin - assign(dest,destpath); rewrite(dest,1); - repeat - blockread(src,buffer,16384,nrec); - blockwrite(dest,buffer,nrec); - until (nrec<16384); - close(dest); - close(src); - dodate; - erase(src); - end; - end; -end; - -procedure ffile(fn:string); -begin - findfirst(fn,anyfile,dirinfo); - found:=(doserror=0); -end; - -procedure nfile; -begin - findnext(dirinfo); - found:=(doserror=0); -end; - -procedure movefiles(srcname,destpath:string); -begin - ffile(srcname); - while found do begin - movefile(dirinfo.name,destpath); - nfile; - end; -end; - - -function make_path(s:string):boolean; -begin - while (copy(s,length(s),1)='\') do s:=copy(s,1,length(s)-1); - make_path:=TRUE; - {$I-} mkdir(fexpand(s)); {$I+} - if (ioresult<>0) then begin - writeln; - star('Error creating directory "'+fexpand(s)+'"'^G^G); - make_path:=FALSE; - end; -end; - -procedure make_paths; -var s:string; -begin - for i:=1 to 7 do begin - while copy(path[i],length(path[i]),1)='\' do - path[i]:=copy(path[i],1,length(path[i])-1); - case i of 1:s:='GFILES'; 2:s:='MSGS'; 3:s:='MENUS'; 4:s:='TFILES'; - 5:s:='AFILES'; 6:s:='TRAP'; 7:s:='TEMP'; end; - star(s+' path ("'+fexpand(path[i])+'")'); - if (not make_path(path[i])) then halt(1); - path[i]:=path[i]+'\'; - end; - star('Creating EMAIL and GENERAL message paths'); - if (not make_path(path[2]+'EMAIL\')) then halt(1); - if (not make_path(path[2]+'GENERAL\')) then halt(1); - star('Creating SYSOP and MISC file paths'); - if (not make_path('DLS\')) then halt(1); - if (not make_path('DLS\SYSOP')) then halt(1); - if (not make_path('DLS\MISC')) then halt(1); - star('Creating TEMP 1, 2, and 3 file paths'); - if (not make_path(path[7]+'1\')) then halt(1); - if (not make_path(path[7]+'2\')) then halt(1); - if (not make_path(path[7]+'3\')) then halt(1); -end; - -procedure make_status_dat; -begin - with systat do begin - bbsname:='Telegard BBS'; - bbsphone:='000-000-0000'; - sysopfirst:='System'; - sysoplast:='Operator'; - boardpw:=''; - sysoppw:='SYSOP'; - bbspw:='MATRIX'; - closedsystem:=FALSE; - matrix:=FALSE; - alias:=TRUE; - clearmsg:=TRUE; - fone:=TRUE; - multitask:=FALSE; - bwindow:=TRUE; - lock300:=FALSE; - wantquote:=TRUE; {* /// *} - mcimsg:=TRUE; {* /// *} - special:=TRUE; - localsec:=FALSE; - localscreensec:=FALSE; - autominlogon:=TRUE; - bullinlogon:=TRUE; - lcallinlogon:=TRUE; - autochatopen:=TRUE; - yourinfoinlogon:=TRUE; - globaltrap:=FALSE; - snowchecking:=FALSE; - forcevoting:=FALSE; - offhooklocallogon:=TRUE; - - with hmsg do begin ltr:='A'; number:=-32766; ext:=1; end; - {* A-32767.1 is the "Greetings from Telegard" message *} - tfiledate:='04/21/89'; - lastdate:='04/21/89'; - users:=1; - callernum:=0; - activetoday:=0; - callstoday:=0; - msgposttoday:=0; - emailtoday:=0; - fbacktoday:=0; - uptoday:=0; - newuk:=0; - newusertoday:=0; - dntoday:=0; - newdk:=0; - gfilepath:=path[1]; - pmsgpath:=path[2]+'EMAIL\'; - menupath:=path[3]; - tfilepath:=path[4]; - afilepath:=path[5]; - trappath:=path[6]; - temppath:=path[7]; - lowtime:=0; hitime:=0; - dllowtime:=0; dlhitime:=0; - b300lowtime:=0; b300hitime:=0; - b300dllowtime:=0; b300dlhitime:=0; - app:=1; - guestuser:=-1; - timeoutbell:=2; - timeout:=5; - sysopcolor:=4; usercolor:=3; - bsdelay:=20; - tosysopdir:=0; - comport:=1; - maxbaud:=1200; - init:='ATH0Q0V0E0M0X1S0=0S2=1S10=40&C1'; - hangup:='ATH'; - offhook:='ATH1'; - answer:='ATA'; - for i:=1 to 2 do - for j:=0 to 4 do begin - case i of - 1:case j of 0:k:=1; 1:k:=5; 2:k:=10; 3:k:=0; 4:k:=13; end; - 2:case j of 0:k:=0; 1:k:=15; 2:k:=16; 3:k:=0; 4:k:=17; end; - end; - resultcode[i][j]:=k; - end; - nocarrier:=3; - nodialtone:=6; - busy:=7; - nocallinittime:=30; - tries:=4; - newsl:=20; newdsl:=20; - newar:=[]; - newac:=[rpostan,rvoting]; - newfp:=0; - autosl:=50; autodsl:=50; - autoar:=[]; - autoac:=[]; - ansiq:='Display ANSI logon? '; - engage:='@M^3The SysOp brings you into chat!'; - endchat:='^3The SysOp returns you to the BBS....@M'; - sysopin:='^3The SysOp is probably around!'; - sysopout:='^3The SysOp is NOT here, or doesn''t want to chat'; - note[1]:='Enter your Telegard NAME or USER NUMBER'; - note[2]:='* NEW USERS, enter "NEW" *'; - lprompt:='Logon : '; - wait:='^3{-^9Please Wait^3-}'; - pause:='(* pause *)'; - msg1:='Enter message now. You have ^3@X^1 lines maximum.'; - msg2:='Enter ^3/S^1 to save. ^3/?^1 for a list of commands.'; - new1:='^7[^5@Y ^7- ^5@W msgs^7] ^4NewScan began.@M'; - new2:='^7[^5@Y ^7- ^5@W msgs^7] ^4NewScan complete.@M'; - read:='^3[^1@Y^3]@M^5[@U] ^4Read (1-@W,,T,Q,P,A,R,B,W,D) : '; - auto1:='^5AutoMessage by: '; - autom:='-'; - echoc:='X'; - - uldlratio:=TRUE; - fileptratio:=FALSE; - fileptcomp:=3; - fileptcompbasesize:=10; - - for i:=0 to 255 do begin - case i of 0..9:k:=1; 10..19:k:=10; 20..29:k:=20; 30..39:k:=40; - 40..49:k:=50; 50..59:k:=80; 60..69:k:=90; 70..79:k:=100; - 80..89:k:=110; 90..99:k:=120; 100..199:k:=130; - 200..239:k:=150; 240..249:k:=200; 250:k:=250; - 251..255:k:=6000; end; timeallow[i]:=k; - case i of 200..255:k:=20; 100..199:k:=15; 50..99:k:=10; - 30..49:k:=5; 20..29:k:=3; else k:=1; end; callallow[i]:=k; - case i of 60..255:k:=5; 20..59:k:=3; else k:=2; end; dlratio[i]:=k; - case i of 60..255:k:=10; 20..59:k:=5; else k:=2; end; dlkratio[i]:=k; - postratio[i]:=100; - end; - - normpubpost:=11; anonpubpost:=100; anonpubread:=100; - normprivpost:=11; anonprivpost:=100; anonprivread:=100; - maxpubpost:=20; maxprivpost:=20; - maxfback:=5; maxchat:=3; - maxwaiting:=15; csmaxwaiting:=50; - maxlines:=120; csmaxlines:=160; - - sop:=255; csop:=250; - msop:=199; fsop:=230; - spw:=250; seepw:=255; - nodlratio:=255; nopostratio:=200; - nofilepts:=255; seeunval:=50; - dlunval:=230; ulrefund:=100; - - eventwarningtime:=60; - filearccomment[1]:=bbsname+' '+bbsphone; - filearccomment[2]:=''; filearccomment[3]:=''; - - for i:=1 to 5 do - with filearcinfo[i] do - case i of - 1:begin - active:=TRUE; - ext:='ZIP'; - listline:='/1'; - arcline:='PKZIP -aeb4 @F @I'; - unarcline:='PKUNZIP @F @I'; - testline:='PKUNZIP -t @F'; - cmtline:='PKZIP -z @F'; - succlevel:=0; - end; - 2:begin - active:=FALSE; - ext:='ARC'; - listline:='/2'; - arcline:='PKPAK a @F @I'; - unarcline:='PKUNPAK @F @I'; - testline:='PKUNPAK -t @F'; - cmtline:='PKPAK x @F'; - succlevel:=0; - end; - 3:begin - active:=FALSE; - ext:='PAK'; - listline:='/2'; - arcline:='PAK a @F @I'; - unarcline:='PAK e @F @I'; - testline:=''; - cmtline:=''; - succlevel:=-1; - end; - 4:begin - active:=FALSE; - ext:='LZH'; - listline:='/4'; - arcline:='LHARC a @F @I'; - unarcline:='LHARC e @F @I'; - testline:=''; - cmtline:=''; - succlevel:=0; - end; - 5:begin - active:=FALSE; - ext:='ZOO'; - listline:='/3'; - arcline:='ZOO aP: @F @I'; - unarcline:='ZOO x @F @I'; - testline:='ZOO xNd @F'; - cmtline:='ZOO cA @F'; - succlevel:=0; - end; - end; - filearcinfo[6].ext:=''; - - minspaceforpost:=10; - minspaceforupload:=100; -postcredits:=0; {* not implemented *} -ulvalreq:=0; {* not implemented *} - moveline:=''; - backsysoplogs:=7; - compressbases:=FALSE; - - for i:=1 to 165 do res[i]:=0; - end; - assign(systatf,'status.dat'); - rewrite(systatf); write(systatf,systat); close(systatf); -end; - -procedure make_user_lst; -const dcols:clrs=((15,7,7,15,15,15,112,7,143,7),(15,3,1,11,9,14,31,4,140,10)); -begin - with u do begin - name:='SYSOP'; - realname:='System Operator'; - pw:='SYSOP'; - ph:='000-000-0000'; - bday:='00/00/00'; - firston:='04/21/89'; - laston:='04/21/89'; - street:=''; - citystate:=''; - zipcode:=''; - computer:='IBM Compatible'; - occupation:=''; - wherebbs:=''; - note:='Change these stats to yours.'; - lockedout:=FALSE; - deleted:=FALSE; - lockedfile:=''; - ac:=[onekey,wordwrap,pause,novice,ansi,color, - smw, {* short message waiting, in SHORTMSG.DAT *} - fnodlratio,fnopostratio,fnofilepts,fnodeletion]; - ar:=[]; for c:='A' to 'Z' do ar:=ar+[c]; - with qscan[1] do begin ltr:='A'; number:=-32767; ext:=1; end; - for i:=2 to maxboards do qscan[i]:=qscan[1]; - for i:=1 to maxboards do qscn[i]:=TRUE; - dlnscn:=[]; - for i:=0 to maxuboards do dlnscn:=dlnscn+[i]; - for i:=1 to 20 do vote[i]:=0; - sex:='M'; - ttimeon:=0.0; - uk:=0.0; - dk:=0.0; - uploads:=0; - downloads:=0; - loggedon:=0; - tltoday:=600; - msgpost:=0; - emailsent:=0; - feedback:=0; - forusr:=0; - filepoints:=0; - waiting:=1; {* A-32767.1 -- "Greetings from Telegard" message *} - linelen:=80; - pagelen:=23; {* to make room for SysOp window when on.. *} - ontoday:=0; - illegal:=0; - sl:=255; - dsl:=255; - cols:=dcols; - lastmsg:=1; - lastfil:=0; - credit:=0.0; - timebank:=0; - for i:=1 to 5 do boardsysop[i]:=255; - - trapactivity:=FALSE; - trapseperate:=FALSE; - -{* NEW STUFF *} - - timebankadd:=0; - mpointer:=-1; - -{* NEW STUFF *ENDS* *} - - for i:=1 to 70 do res[i]:=0; - end; - assign(uf,'user.lst'); - rewrite(uf); - seek(uf,0); write(uf,u); - seek(uf,1); write(uf,u); - close(uf); -end; - -procedure make_names_lst; -begin - with sr do begin - name:='SYSOP'; - number:=1; - end; - assign(sf,'names.lst'); - rewrite(sf); - seek(sf,0); write(sf,sr); - seek(sf,1); write(sf,sr); - close(sf); -end; - -procedure make_macro_lst; -var i:integer; -begin - with macr do - for i:=1 to 4 do macro[i]:=''; - assign(macrf,'macro.lst'); - rewrite(macrf); - seek(macrf,0); write(macrf,macr); - close(macrf); -end; - -procedure make_boards_dat; -begin - with br do begin - name:='General Messages'; - filename:='GENERAL'; - msgpath:=path[2]+'GENERAL\'; - sl:=30; - maxmsgs:=50; - password:=''; - anonymous:=no; - ar:='@'; - postsl:=30; - end; - assign(bf,'boards.dat'); - rewrite(bf); - seek(bf,0); write(bf,br); - close(bf); -end; - -procedure make_uploads_dat; -begin - assign(uff,'uploads.dat'); - rewrite(uff); - with ufr do begin - name:='SysOp directory'; - filename:='SYSOP'; - dlpath:=curdir+'\DLS\SYSOP\'; - noratio:=FALSE; - sl:=255; - dsl:=255; - namesl:=255; - ar:='@'; - maxfiles:=999; - agereq:=1; - password:=''; - arctype:=1; - cmttype:=1; - unhidden:=FALSE; - end; - write(uff,ufr); - with ufr do begin - name:='Miscellaneous'; - filename:='MISC'; - dlpath:=curdir+'\DLS\MISC\'; - noratio:=FALSE; - sl:=30; - dsl:=30; - namesl:=10; - ar:='@'; - maxfiles:=999; - agereq:=1; - password:=''; - arctype:=1; - cmttype:=1; - unhidden:=TRUE; - end; - write(uff,ufr); close(uff); -end; - -procedure make_protocol_dat; -begin - assign(xp,'protocol.dat'); - rewrite(xp); - for i:=1 to 11 do - with xpr do begin - rcmd:=''; scmd:=''; - rul:=FALSE; rdl:=FALSE; - sl:=0; dsl:=0; ar:='@'; - xferok:=-1; - if (i in [1..5]) then active:=TRUE else active:=FALSE; - case i of - 1:begin descr:='Ascii'; key:='A'; ptype:=1; rul:=TRUE; end; - 2:begin descr:='Xmodem'; key:='X'; ptype:=2; end; - 3:begin descr:='Xmodem CRC'; key:='C'; ptype:=3; end; - 4:begin descr:='Ymodem'; key:='Y'; ptype:=4; end; - 5:begin descr:='Ymodem'; key:='Y'; ptype:=5; rul:=TRUE; end; - 6:begin - descr:='Zmodem'; - key:='Z'; - ptype:=6; - rcmd:='dsz port @2 speed @1 rz @3'; - scmd:='dsz port @2 speed @1 sz @3'; - xferok:=0; - end; - 7:begin - descr:='Zmodem'; - key:='Z'; - ptype:=7; - rcmd:='dsz port @2 speed @1 rz'; - scmd:='dsz port @2 speed @1 @@4'; - xferok:=0; - end; - 8:begin - descr:='Zmodem '+#3#5+'Recovery'; - key:='Z'; - ptype:=8; - rcmd:='dsz port @2 speed @1 -r rz @3'; - scmd:='---'; - xferok:=0; - rdl:=TRUE; - end; - 9:begin - descr:='Lynx'; - key:='L'; - ptype:=6; - rcmd:='lynx R /@1 /@2 @3'; - scmd:='lynx S /@1 /@2 @3'; - xferok:=0; - end; - 10:begin - descr:='Lynx'; - key:='L'; - ptype:=7; - rcmd:='lynx R /@1 /@2'; - scmd:='lynx S /@1 /@2 @3'; - xferok:=0; - end; - 11:begin - descr:='Lynx '+#3#5+'Recovery'; - key:='L'; - ptype:=8; - rcmd:='lynx R /@1 /@2'; - scmd:='---'; - xferok:=0; - rdl:=TRUE; - end; - 12:begin - descr:='Jmodem'; - key:='J'; - ptype:=6; - rcmd:='jmodem R@2 @3'; - scmd:='jmodem S@2 @3'; - xferok:=-1; - end; - 13:begin - descr:='Megalink'; - key:='M'; - ptype:=6; - rcmd:='mlink PORT @2 SPEED @1 RM @3'; - scmd:='mlink PORT @2 SPEED @1 SM @3'; - xferok:=0; - end; - end; - write(xp,xpr); - end; - close(xp); -end; - -procedure make_zlog_dat; -begin - with zfr do begin - date:='04/21/89'; - active:=0; - calls:=0; - post:=0; - email:=0; - fback:=0; - up:=0; - end; - assign(zf,'zlog.dat'); - rewrite(zf); write(zf,zfr); - zfr.date:=''; - for i:=1 to 96 do write(zf,zfr); - close(zf); -end; - -procedure make_email_dat; -begin - with mr do begin - title:='Greetings from Telegard'; - from:=1; destin:=1; - with msg do begin ltr:='A'; number:=-32767; ext:=1; end; - mage:=255; - end; - mr.date:=daynum(date); - assign(mailfile,'email.dat'); - rewrite(mailfile); write(mailfile,mr); close(mailfile); -end; - -procedure make_events_dat; -begin - with evr do begin - active:=FALSE; - description:='A NEW Telegard Event'; - etype:='D'; - execdata:='event.bat'; - busytime:=5; - exectime:=0; - busyduring:=TRUE; - duration:=1; - execdays:=0; - monthly:=FALSE; - end; - assign(evf,'events.dat'); - rewrite(evf); write(evf,evr); close(evf); -end; - -procedure make_laston_dat; -begin - with lcall do begin - callernum:=0; - name:='Eric Oman'; - number:=1; - citystate:='Grosse Pointe Woods, Michigan'; - end; - assign(lcallf,'laston.dat'); - rewrite(lcallf); write(lcallf,lcall); - lcall.callernum:=-1; - for i:=1 to 9 do write(lcallf,lcall); - close(lcallf); -end; - -procedure make_gfiles_dat; -begin - assign(tfilf,'gfiles.dat'); - rewrite(tfilf); - for i:=0 to 1 do begin - with tfil do - case i of - 0:begin - num:=1; {* 1 entry total *} - title:=''; - filen:=''; - ar:='@'; - gdate:='04/21/89'; - gdaten:=daynum(gdate); - end; - 1:begin - num:=0; {* SL level *} - title:='Miscellaneous'; - filen:=#1#0#0#0#0#0; - ar:='@'; - gdate:='04/21/89'; - gdaten:=daynum(gdate); - end; - end; - write(tfilf,tfil); - end; - close(tfilf); -end; - -procedure make_verbose_dat; -begin - with vr do - for i:=1 to 4 do descr[i]:=''; - assign(verbf,'verbose.dat'); - rewrite(verbf); write(verbf,vr); close(verbf); -end; - -procedure make_voting_dat; -begin - with vd do begin - question:='<< No Question >>'; - numa:=0; - for i:=0 to 9 do - with answ[i] do begin - if (i<>0) then ans:='Selection '+chr(i+48) else ans:='No Comment'; - numres:=0; - end; - end; - assign(vdata,'voting.dat'); - rewrite(vdata); - for i:=0 to 19 do write(vdata,vd); - close(vdata); -end; - -procedure make_shortmsg_dat; -begin - with sm do begin - msg:='Telegard files initialized on '+date+' '+time+'.'; - destin:=1; - end; - assign(smf,'shortmsg.dat'); - rewrite(smf); write(smf,sm); close(smf); -end; - -procedure make_mboard(s:string); -var f:file; -begin - msr.message.number:=0; - assign(f,s+'.BRD'); - rewrite(f,sizeof(messagerec)); blockwrite(f,msr,1); close(f); -end; - -procedure make_fboard(s:string); -begin - ulffr.blocks:=0; - assign(ulff,s+'.DIR'); - rewrite(ulff); write(ulff,ulffr); close(ulff); -end; - -procedure dostuff; -begin - ttl('Creating Telegard directory paths'); - make_paths; - ttl('Creating Telegard data files'); - make_status_dat; - make_user_lst; - make_names_lst; - make_macro_lst; - make_boards_dat; - make_uploads_dat; - make_protocol_dat; - make_zlog_dat; - make_email_dat; - make_events_dat; - make_laston_dat; - make_gfiles_dat; - make_verbose_dat; - make_voting_dat; - make_shortmsg_dat; - make_mboard('general'); - make_fboard('sysop'); - make_fboard('misc'); - ttl('Moving data files into GFILES directory'); - movefile('user.lst',path[1]); - movefile('names.lst',path[1]); - movefile('macro.lst',path[1]); - movefile('boards.dat',path[1]); - movefile('email.dat',path[1]); - movefile('events.dat',path[1]); - movefile('gfiles.dat',path[1]); - movefile('laston.dat',path[1]); - movefile('protocol.dat',path[1]); - movefile('shortmsg.dat',path[1]); - movefile('uploads.dat',path[1]); - movefile('verbose.dat',path[1]); - movefile('voting.dat',path[1]); - movefile('zlog.dat',path[1]); - movefiles('*.BRD',path[1]); - movefiles('*.DIR',path[1]); - ttl('Moving miscellaneous text files into AFILES directory'); - movefiles('*.ANS',path[5]); - movefiles('*.MSG',path[5]); - movefiles('*.TUT',path[5]); - movefile('computer.txt',path[5]); - ttl('Moving message file into MSGS\EMAIL directory'); - movefile('a-32767.1',path[2]+'EMAIL\'); - ttl('Moving menu files into MENUS directory'); - movefiles('*.MNU',path[3]); -end; - -begin - infield_out_fgrd:=11; - infield_out_bkgd:=0; - infield_inp_fgrd:=15; - infield_inp_bkgd:=1; - - clrscr; - gotoxy(1,1); textbackground(1); textcolor(15); - clreol; write(' Initialization Utility for Telegard version '+ver); - textbackground(0); textcolor(7); - window(1,2,80,25); - writeln; - assign(systatf,'status.dat'); - {$I-} reset(systatf); {$I+} - if ioresult=0 then begin - textcolor(28); write('WARNING!!'); - textcolor(14); writeln(' "STATUS.DAT" file already exists..'); - writeln('Telegard has already been initialized!'); - writeln('If you proceed, ALL DATA FILES WILL BE ERASED AND INITIALIZED!!!'); - writeln; - if not pynq('Proceed? ') then halt(1); - writeln; - end; - - getdir(0,curdir); - path[1]:=curdir+'\GFILES\'; - path[2]:=curdir+'\MSGS\'; - path[3]:=curdir+'\MENUS\'; - path[4]:=curdir+'\TFILES\'; - path[5]:=curdir+'\AFILES\'; - path[6]:=curdir+'\TRAP\'; - path[7]:=curdir+'\TEMP\'; - - textcolor(14); - writeln; - writeln('You will now be prompted several times for names of directorys'); - writeln('that will be used by Telegard. Each directory will be created'); - writeln('and the appropriate files will be moved there-in.'); - writeln; - writeln('GFILES pathname. This is the directory where the Telegard data'); - writeln('files and miscellaneous Telegard text files will be located.'); - writeln; - prt('GFILES dirname: '); infielde(path[1],60); writeln; writeln; - - textcolor(14); - writeln('MSGS pathname. This directory should contain all the other message'); - writeln('directory paths used by Telegard, including private mail (EMAIL).'); - writeln('Located in these paths are the text of the Telegard messages.'); - writeln; - prt('MSGS dirname: '); infielde(path[2],60); writeln; writeln; - - textcolor(14); - writeln('MENUS pathname. This is the directory where the Telegard menu'); - writeln('files will be located.'); - writeln; - prt('MENUS dirname: '); infielde(path[3],60); writeln; writeln; - - textcolor(14); - writeln('TFILES pathname. This is the directory where the Telegard'); - writeln('"text file section" text files will be located in.'); - writeln; - prt('TFILES dirname: '); infielde(path[4],60); writeln; writeln; - - textcolor(14); - writeln('AFILES pathname. This is the directory where the Telegard'); - writeln('menu help files, ANSI displays, etc. will be located.'); - writeln; - prt('AFILES dirname: '); infielde(path[5],60); writeln; writeln; - - textcolor(14); - writeln('TRAP pathname. This is the directory where Telegard will'); - writeln('output all User Audit traps to. In the future, CHAT.MSG,'); - writeln('SYSOP*.LOG, FILE*.LOG, etc. will be stored here as well.'); - writeln; - prt('TRAP dirname: '); infielde(path[6],60); writeln; writeln; - - textcolor(14); - writeln('TEMP pathname. Telegard uses this directory to convert between'); - writeln('archive formats, receive batch uploads, and allow users to'); - writeln('decompress archives to download single files, etc.'); - writeln; - prt('TEMP dirname: '); infielde(path[7],60); writeln; writeln; - - clrscr; - - dostuff; - - writeln; - star('Telegard BBS installed and initialized successfully!'); - star('This program, "INIT.EXE", can now be deleted.'); - star('Thanks for trying Telegard!'); -end.