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)
|