<> <> <> <<>> <<002353: Change the banner line.>> @x @d banner=='This is PLtoTF, Version 2.3' {printed when the program starts} @y @d banner=='This is PLtoTF 2.3 for Cedar 6.0' {printed when the program starts} @z <<003097: Change write_ln to writeln.>> @x @d print_ln(#)==write_ln(#) @y @d print_ln(#)==writeln(#) @d read_ln(#) == readln(#) @z <<003253: Allow for external procedure and function declarations for things implemented directly in Cedar, rather than in Pascal.>> @x var @@/ procedure initialize; {this procedure gets things started properly} @y var @@/ @@/ procedure initialize; {this procedure gets things started properly} @z <<004887: Reset the input.>> @x reset(pl_file); @y file_reset(pl_file, 'pl '); @z <<019384: Packed file of 0..255 needs an id; call it a byte_file.>> @x @!tfm_file:packed file of 0..255; @y @!tfm_file: byte_file; @z <<019730: Open the tfm file.>> @x rewrite(tfm_file); @y byte_file_rewrite(tfm_file, 'tfm '); @z <<076021: Hook up call to write_byte.>> @x @d out(#)==write(tfm_file,#) @y @d out(#)==write_byte(tfm_file,#) @z <<082671: Open terminal for output.>> @x @p begin initialize;@/ @y @p begin tty_rewrite(output); initialize;@/ @z <<082755: Close files when done.>> @x @; @y @; file_close(pl_file); byte_file_close(tfm_file); @z <<082780: Define the externals.>> @x @* System-dependent changes. @y @* Externals for things in Cedar. Here they are: @= procedure tty_rewrite(var f: text); external; {set up for output to terminal} procedure byte_file_rewrite(var f: byte_file; ext: alfa); external; {set up for output to byte file} procedure file_reset(var f: text; ext: alfa); external; {set up for input from file} procedure file_close(var f: text); external; {close a text file} procedure byte_file_close(var f: byte_file); external; {close a byte file} procedure write_byte(var f: byte_file; b: 0..255); begin write(f,b) end; @ @= byte_file = packed file of 0..255; @ @= output: text; @* System-dependent changes. @z