home bbs files messages ]

Just a sample of the Echomail archive

Cooperative anarchy at its finest, still active today. Darkrealms is the Zone 1 Hub.

   PASCAL_LESSONS      Pascal Programming Lessons      361 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 237 of 361   
   joseph larsen to All   
   Some code i'm having problems with.   
   13 Feb 16 00:50:10   
   
   Here's some code. The problem is that I have to press the down arrow key   
   twice before it executes the "bot_bar" procedure. If anyone could help, or   
   take a look at it, i'd appreciate it.   
      
   --//--snip-------------------------   
      
   procedure oneliners;   
      
   var  Twriters  : array[1..10] of string;   
   var  Toneliner : array[1..10] of string;   
   var  S         : string;   
   var  Foneline  : string;   
   var  Ch1       : char;   
   var  Ch2       : char;   
   var  Ch3       : char;   
   var  Count     : byte;   
   var  Count2    : byte;   
      
      
      
   Procedure show;   
      
   var Count : byte;   
      
   Begin   
      
     printf('oneh.ans');   
     For Count := 1 To 10 Do Begin;   
       write('^[[1;37m+ ^[[0;37m');   
       write(Twriters[Count]);   
       write('^[[1;30m: ^[[0;37m');   
       WriteLn(Toneliner[Count]);   
     End;   
   End; // show   
      
   Procedure init;   
      
   Var f1 : textfile;   
   var Count : byte;   
      
   Begin   
     fOneLine := ('/home/imp/imp/data/oneliner.lst');   
     If Not fileExists(fOneLine) Then Begin   
       Assign(f1, fOneLine);   
       ReWrite(f1);   
       For Count := 1 To 10 Do Begin   
         WriteLn(f1,'Ia! Cthulhu!');   
         WriteLn(f1,'IGNATIUS');   
       End;   
       Close(f1);   
     End;   
      
     Assign(f1, fOneLine);   
       Reset(f1);   
       If IoResult = 0 Then Begin   
         For Count := 1 To 10 Do Begin   
           ReadLn(f1, Toneliner[Count]);   
          ReadLn(f1, Twriters[Count]);   
         End;   
       Close(f1);   
     End;   
   End; // Init   
      
   Procedure bot_bar;   
   Begin   
     printf('onen.ans');   
     Ch2 := ReadKey;   
     If Ch2 = #13 then Begin   
       exit;   
     End;   
     show;   
   End; // bot_bar   
      
   Procedure top_bar;   
      
   Var f1 : textfile;   
   var Count : byte;   
   var ch3 : char;   
      
      
   Begin   
     printf('oney.ans');   
     Ch3 := ReadKey;   
     If Ch3 = #13 then Begin   
       printf('oneline.asc');   
       Write('^[[3;3H');   
       inputl(s,70);   
       If s = '' then Begin   
         WriteLn('^[[1;30maborted^[[0;37m');   
         show;   
         Exit;   
       End;   
       For Count := 1 To 9 Do Begin   
         Count2 := Count + 1;   
         Toneliner[Count] := Toneliner[Count2];   
         Twriters[Count] := Twriters[Count2];   
       End;   
      
       tWriters[10]:=thisuser.name;   
       tOneliner[10] := s;   
      
       Assign(f1, fOneLine);   
       ReWrite(f1);   
       For Count := 1 To 10 do Begin   
         WriteLn(f1,tOneliner[Count]);   
         WriteLn(f1,tWriters[Count]);   
       End;   
       Close(f1);   
     End;   
     show;   
   End; // top_bar   
      
   Procedure position;   
      
   Begin   
     show;   
     Repeat   
     printf('onen.ans');   
     ch1:=ReadKey;   
         case ch1 of   
         #0 : begin   
                ch1:=ReadKey;   
                case ch1 of   
                #80 : bot_bar;   
                #72 : top_bar;   
                end;   
              end;   
         end;   
     until ch1=#13   
   end;   
      
   Begin   
     init;   
     Position;   
   End;   
      
   --//--snip------------------------   
      
   Thanks,   
      
   |09ignatius |07[|15cia|07]   
      
   --- Mystic BBS v1.11 (Linux)   
    * Origin: catch22bbs.com >>>  >> > (1:340/800)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca