PROCEDURE WriteItems;
VAR
ptr : boolean;
fptr : file of char;
printer: char;
entry :ItemPointers;
begin
write('Enter "P" for a printer listing, anything else to skip');
readln(printer);
if (printer = 'P') or (printer = 'p') then
begin
ptr := true;
rewrite('lst:',fptr);
write(fptr,chr(15)); {single space key}
writeln(fptr,' File number (ssic) ordered listing');
writeln(fptr,' SSIC Subject Action Info');
end else ptr := false;
entry := ListHead;
While entry <> NIL DO
WITH entry^ DO
begin
Write(fout,item);
if ptr = true then
begin
WITH item do begin
writeln(fptr,ssic,' ',subj,' ',action,' ',info);
end {with}
end; {if ptr = true}
entry := Next
end; {with}
with newitem do
begin
ssic := '-----';
subj := 'end of sort by ssic ';
action := ' ';
info := 'EOF ';
end; {with}
write(fout,newitem);
end; (* WriteItems *)
.