home *** CD-ROM | disk | FTP | other *** search
/ Hacker Chronicles 2 / HACKER2.BIN / 452.NETINIT.PAS < prev    next >
Pascal/Delphi Source File  |  1989-11-19  |  2KB  |  86 lines

  1. procedure read_config_file;
  2. var init_file : text;
  3.     dmy : string[12];
  4.     i : integer;
  5. begin
  6.   size_of_net := max_old;
  7.   assign(init_file,'NET.CFG');
  8.   {$I-}
  9.   reset(init_file);
  10.   if (IOresult = 0) then
  11.   begin
  12.     readln(init_file,dmy,size_of_net);
  13.     readln(init_file,dmy,aux_b);
  14.     readln(init_file,dmy,aux_f);
  15.     readln(init_file,dmy,brite_b);
  16.     readln(init_file,dmy,brite_f);
  17.     readln(init_file,dmy,border_b);
  18.     readln(init_file,dmy,border_f);
  19.     readln(init_file,dmy,status_f);
  20.     readln(init_file,dmy,norm_b);
  21.     readln(init_file,dmy,norm_f);
  22.     readln(init_file,dmy,say_b);
  23.     readln(init_file,dmy,say_f);
  24.     readln(init_file,dmy,get_b);
  25.     readln(init_file,dmy,get_f);
  26.     readln(init_file,dmy,first);
  27.     if first > 0 then first := 1;
  28.     { make sure max_old is a valid factor of 2 }
  29.     max_old := 1;
  30.     repeat max_old := max_old SHL 1 until max_old >= size_of_net;
  31.     close(init_file);
  32.   end;
  33. end;
  34.  
  35. procedure net_list_init;
  36. var i, max : integer;
  37. begin
  38.   if (35.0 * max_old) > (MaxAvail) then
  39.   begin
  40.     i := round(MaxAvail / 35.0);
  41.     max := 1;
  42.     repeat max := max SHL 1 until max > i;
  43.     max := max SHR 1;
  44.     clrscr;
  45.     write('Insufficient memory to support data arrays for ');
  46.     writeln(size_of_net,' records.');
  47.     writeln('This computer can support ',max,' records.');
  48.     writeln('Correct NET.CFG file line # 1 to fix this problem.');
  49.     writeln;
  50.     halt;
  51.   end;
  52.   for i := 1 to max_old do
  53.   begin
  54.     new(net_list[i]);
  55.     net_list[i]^.xref := 0;
  56.     net_list[i]^.suffix := '';
  57.   end;
  58.   for i := 1 to max_new do
  59.   begin
  60.     new(new_list[i]);
  61.     new_list[i]^.xref := 0;
  62.     new_list[i]^.suffix := '';
  63.   end;
  64. end;
  65.  
  66. procedure net_init;
  67. var i : word;
  68. begin
  69.   read_config_file;
  70.   default_file := default;
  71.   nbr_calls := 0;
  72.   curr_pntr := 0;
  73.   top_pntr := 0;
  74.   new_pntr := 0;
  75.   mark1 := 0;
  76.   mark2 := 0;
  77.   update_flag := FALSE;
  78.   leaving := FALSE;
  79.   net_list_init;
  80.   GetTime(i,i,this_second,i);
  81.   key := #0;
  82.   border_attribute := border_b SHL 4 + border_f;
  83.   normcolor;
  84. end;
  85.  
  86.