INFUINIT.PAS

3 KB f5cc3f27a3300d8c…
program infuInit;
  uses crt,dos,control,skaShit,genSubs,genTypes,configRt;
{::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::}
{$I ANSIS.SKA}
  Procedure Show(S : String);
  Begin
   gotoxy(3,wherey);
   skawrite('|07.,:$½%'' |07'+S);
  End;
{::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::}
procedure initDrawScreens(scrn : byte);
 var x : byte;
 begin
  if (scrn=1) then
   begin
   clrscr;
   move(header12,mem[$b800:0000],sizeOf(header12));
   gotoXY(4,9);skaWrite('|07infusion bbs software initialization utility, (c)copyright skaboy101 1998|CR|CR');
   end else
  if (scrn=2) then
   begin
   show('node1.dat must be present for init..|CR|CR');
   halt(5);
   end else
  if (scrn=3) then
   begin
   show('it seems that infuinit has already been ran, .. halting|CR');
   halt(5);
   end;
 end;
{::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::}
procedure initDoInit;
var f : file;

    procedure deleteFile(fileName : string);
     begin
     if not exist(cfg.dataDir+fileName) then exit;
     assign(f,cfg.DataDir+fileName);
     erase(f);
     end;

 begin
 show('initializing your system .');
  readCfg(false);
  getDir(0,cfg.infusionDir);cfg.infusionDir := cfg.infusionDir + '\';
  cfg.dszlog      := cfg.infusionDir+'DSZLOG.LOG';
  cfg.startMenu   := 'MATRIX';
  cfg.longName    := 'A NEW Infusion BBS';
  cfg.shortName   := 'INF';
  cfg.sysopName   := 'sysop';
  cfg.useCom      := 2;
  cfg.coSysopName := 'co-sysop';
  cfg.systemPassword := '';
  cfg.newUserPassword := 'New';
  cfg.textFileDir := cfg.infusionDir + 'TEXT\';
  cfg.uploadDir   := cfg.infusionDir + 'UPLOADS\';
  cfg.textDir     := cfg.infusionDir + 'MSGS\';
  cfg.boardDir    := cfg.infusionDir + 'BOARDS\';
  cfg.doorDir     := cfg.infusionDir + 'DOORS\';
  cfg.dataDir     := cfg.infusionDir + 'DATA\';
  cfg.extractDir  := cfg.infusionDir + 'EXTRACT\';
  cfg.menuDir     := cfg.infusionDir + 'MENU\';
  cfg.screensDir  := cfg.infusionDir + 'SCREENS\';
  cfg.iclDir      := cfg.infusionDir + 'ICL\';
  cfg.gifMenuDir  := cfg.infusionDir + 'GIF\';
  assign(f,'NODE1.DAT');
  rewrite(f,1);
  cfg.nodeNum := 1;cfg.totalNodes := 2;
  blockWrite(f,cfg,sizeOf(cfg));
  close(f);
  assign(f,'NODE2.DAT');
  rewrite(f,1);
  cfg.useCom := 2;
  cfg.nodeNum := 2;
  blockWrite(f,cfg,sizeOf(cfg));
  close(f);
  skaWrite('|07...');
  deleteFile('USERS');
  deleteFile('STATUS.DAT');
  deleteFile('CALLERS');
  deleteFile('ONELINES.DAT');
  deleteFile('NUV.DAT');
  deleteFile('BBSLIST.DAT');
  deleteFile('DAILYLOG.DAT');
  deleteFile('FEEDBACK');
  deleteFile('NEWS');
  deleteFile('SYSLOG.DAT');
 skaWrite('|07................................. done|CR');
 end;
{::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::}
begin
 fileMode := 66;
 initDrawScreens(1);
 if not exist('NODE1.DAT') then initDrawScreens(2);
 {if not exist('.\DATA\USERS') then initDrawScreens(3);}
 initDoInit;
end.