Just a sample of the Echomail archive
[ << oldest | < older | list | newer > | newest >> ]
|  Message 257  |
|  Joseph Larsen to All  |
|  FPC Oneliners.  |
|  05 Jun 16 09:30:42  |
 
Here's some code i'm having problems with. For some reason it takes two
presses of the down arrow key to get the bot_bar procedure.
--//--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;
//### begin show procedure ######################################
Procedure show;
var Count : byte;
Begin
// clrscr;
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
//### end show procedure ########################################
//### begin init procedure ######################################
Procedure init;
Var f1 : textfile;
var Count : byte;
Begin
// GetThisUser;
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
//### begin bot_bar procedure ###################################
Procedure bot_bar;
Begin
printf('onen.ans');
Ch2 := ReadKey;
If Ch2 = #13 then Begin
exit;
End;
show;
End; // bot_bar
//### end bot_bar procedure #####################################
//### begin top_bar procedure ###################################
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
//### end top_bar procedure #####################################
//### begin position procedure ##################################
Procedure position;
Begin
show;
Repeat
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;
//### end position procedure ####################################
Begin
init;
Position;
End;
--//--snip----------
If someone could give me an idea of what's wrong, i'd appreciate it.
Thank you,
|09ignatius |07(|15cia|07)
--- DayDream BBS/UNIX (Linux) 2.15a
* Origin: catch22bbs.com >>> >> > (1:340/800)
|
[ << oldest | < older | list | newer > | newest >> ]