|
|
DataMuseum.dkPresents historical artifacts from the history of: CP/M |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CP/M Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 3200 (0xc80)
Types: TextFile
Names: »POLE1.BAK«
└─⟦692ac107c⟧ Bits:30005923 PolyPascal-80 V3.10 arbejdsdiskette 1
└─⟦this⟧ »POLE1.BAK«
PROGRAM LPRINTER; (* O.B.M. 3/4-1985. *)
(* PROGRAMMET UDSKRIVER FILER PAA PRINTER SAMT UDSKRIVER SIDE NR. *)
(* OG HVIS MAN VIL , OGSAA DAG,MAANED,AAR OG KLOKKESLET SAMMEN MED *)
(* SIDE NR. *)
CONST
ANTAL= 65; (* antal linier pr side *)
NAVN = 'Ole'; (* udskrift indifikation *)
AAR = 1985;
VAR
SEK,MIN,TIM: STRINGÆ2Å;
UR,HVAD,R,S,T,U,V,X: CHAR;
SIDE,LINNO,I,DAG,MON: INTEGER;
CMDLIN: STRINGÆ80Å AT $80;
FIL: TEXT;
FILN: STRINGÆ20Å;
LINIE: STRINGÆ150Å;
FOUND,PF: BOOLEAN;
PROCEDURE SETTIME; (* set time *)
BEGIN
WRITE(' Skriv tid 6 cifre ');
READ(KBD,R);WRITE(R);
READ(KBD,S);WRITE(S,':');
READ(KBD,T);WRITE(T);
READ(KBD,U);WRITE(U,':');
READ(KBD,V);WRITE(V);
READ(KBD,X);WRITE(X);
WRITELN(@27,'c',R,S,T,U,V,X);
END;
PROCEDURE GETTIME;
BEGIN
WRITE(@27,'d');
READ(KBD,R,S,T,U,V,X);
END;
PROCEDURE DISPLAY;
BEGIN
WRITE(@27,'x1'); (* enable status line *)
WRITE(@27,'x:'); (* time display *)
END;
PROCEDURE DATOTID;
BEGIN
GETTIME;
SEK:= V+X;
MIN:= T+U;
TIM:= R+S;
WRITE(' ',DAG,'/',MON,'-',AAR,'. KL ',TIM,':');
WRITE(MIN,':');
WRITE(SEK,' ');
write(' ',dag,'/',mon,'-',AAR,'. kl ',tim,':');
WRITE(MIN,':');
WRITE(SEK,' ');
write();
END;
procedure page;
begin
WRITELN();
write(' Side:',side:3,' ');
write(' Side:',side:3,' ');
IF HVAD='J' THEN DATOTID;
WRITELN(NAVN,'s printerudskrift. ');
writeln(NAVN,'s printerudskrift. ');
writeln();
writeln();
side := succ(side);
linno := 2;
end;
PROCEDURE DATO;
BEGIN
DISPLAY;
WRITE(' Skriv dato dag RETURN maaned RETURN ');
READ(DAG);WRITE('/');READ(MON);WRITELN('-',AAR);
WRITE(' Skal uret stilles J/N ');
READLN(UR);
IF UR='J' THEN SETTIME;
END;
(* PROGRAM START *)
begin
WRITE(CLRHOM);
WRITE(' Skal der dato og tid paa udskrift < J/N > ');
READLN(HVAD);
IF HVAD='J' THEN DATO;
found := false;
filn := copy(cmdlin,2,len(cmdlin)-1);
repeat
if filn <> '' then
begin
for i := 1 to len(filn) do
if filn(.i.) in (.'a'..'z'.)
then filn(.i.) := char(ord(filn(.i.))-$20);
assign(fil,filn);
(*$I-*)
reset(fil);
found := iores=0;
(*$I+*)
end;
if not found then
begin
filn := '';
write(' Filenavn: ');
readln(filn);
end;
until (filn = '') or found;
if found then
begin
pf := true;
side := 1;
linno := 0;
while (not eof(fil)) and (not keypress) do
begin
readln(fil,linie);
for i := 1 to len(linie) do
begin
if (i = 1) and (linno = 0) and (linie(.i.) <> ^L) then page;
if linie(.i.) = ^L then page else write(lst,linie(.i.));
end;
writeln();
linno := succ(linno) mod ANTAL;
end;
end;
end.
«eof»