DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T c

⟦7a3b901b9⟧ TextFile

    Length: 3574 (0xdf6)
    Types: TextFile
    Names: »chtopx.SYS_V.ch«

Derivation

└─⟦060c9c824⟧ Bits:30007080 DKUUG TeX 2/12/89
    └─⟦this⟧ »./tex82/Unsupported/MFpxl/mfware/chtopx.SYS_V.ch« 
└─⟦52210d11f⟧ Bits:30007239 EUUGD2: TeX 3 1992-12
    └─⟦beba6c409⟧ »unix3.0/Unsupported.tar.Z« 
        └─⟦25c524ae4⟧ 
            └─⟦this⟧ »Unsupported/MFpxl/mfware/chtopx.SYS_V.ch« 

TextFile

% Change file for chtopx by Mike Harrison
% History:
% 11/15/83 MH	Initially brought up
% 11/22/83 RKF	Updated to Version 1 of chtopx
% 3/27/87  LKS	For System V UNIX

@x Only print changes
\pageno=\contentspagenumber \advance\pageno by 1
@y
\pageno=\contentspagenumber \advance\pageno by 1
\let\maybe=\iffalse
@z

@x
@d print(#)==write(error_file,#)
@d print_ln(#)==write_ln(error_file,#)
@y
@d error_file==output	{here, errors go to the standard output}
@d print(#)==write(error_file,#)
@d print_ln(#)==write_ln(error_file,#)
@z

@x
@p program CHtoPX(@!chr_file,@!pxl_file,@!error_file);
@y
@p program CHtoPX(@!chr_file,@!pxl_file,@!output);
@z

@x
var@?@<Global Variables@>@/
@y
var @<Global Variables@>@/
@#
@\@=#include "chtopx_ext.h"@>@\ {declarations for external C procedures}
@z

% ANSII Standard PASCAL
@x
@!font_tbl_type= packed array [1..tbl_size] of font_rec;
@y
@!font_tbl_type= array [1..tbl_size] of font_rec;
@z

@x
@!save_raster_width:integer;    {value read in from |chr_file|}
@y
@!save_raster_width:integer;    {value read in from |chr_file|}
@!new_pointer:integer;		{used to caluculate new pointers}
@!count:integer;
@z

@x
@ Additionally, an error file is provided which contains all error messages
for each character. This file can be specified to be the terminal, in which
case all the error messages will be displayed when the program is run.

@<Glob...@>=
@!error_file:text;
@y
@ In this version, all error messages go to the standard output.  The
definition of |error_file| had to be made earlier because of the
preceding definitions for |print| and |print_ln|.
@z

@x
@<Type...@>=
@!byte=0..255;
@y
@<Type...@>=
@!byte=0..255;
@!bytefile=packed file of char;
@z

@x
@!pxl_file:packed file of byte;
@y
@!pxl_file:bytefile;
@!pxl_fname,@!chr_fname:packed array [1..40] of char;
@z

@x
@<Open input...@>=
rewrite(pxl_file);@/
reset(chr_file);@/
rewrite(error_file);
@y
@<Open input...@>=
if argc < 3 then begin
    print_ln('Usage: CHtoPX <chr-file> <pxl-file>');
    halt;
end;
argv(2, chr_fname);
reset(chr_file, chr_fname);
argv(3,pxl_fname);
rewrite (pxl_file,pxl_fname);
@z

@x
write (pxl_file,k,l,m,n);
@y
bytewrite(pxl_file,k);@/
bytewrite(pxl_file,l);@/
bytewrite(pxl_file,m);@/
bytewrite(pxl_file,n);
@z

@x
write(pxl_file,m,n);
end;
@y
bytewrite(pxl_file,m);@/
bytewrite(pxl_file,n);
end;
@z

% compensate for bug in ch character format
@x
y_offset:=bar_row-plus_row - 1;@/
@y
if bar_row=-1 then y_offset:=-1 else y_offset:=bar_row-plus_row - 1;@/
@z

@x
@d out(#) == write (pxl_file,(# mod 256));@/
@y
@d out(#) == bytewrite (pxl_file,(# mod 256));@/
@z

@x
old_raster_addr:=raster_addr;@/
@y
old_raster_addr:=new_pointer;@/
@z

@x
first_line:=true;@/
@y
first_line:=true;@/
count:=-1;@/
@z

@x
  end;@/
    if raster_found then incr(raster_addr);@/
@y
  end;@/
    incr(count);@/
    if raster_found then incr(raster_addr);@/
@z

@x
until end_of_page or not raster_found;
if not raster_found then skip_to_next_pg;
@y
until end_of_page or not raster_found;
new_pointer := new_pointer + count;@/
if not raster_found then skip_to_next_pg;
@z

@x Boy oh boy is pc literal minded---it rejects null strings in a write!
font_info[chr_index].raster_addr:=old_raster_addr;@/
if not all_match then
begin @/
error ('');   {skip to next line}@/
@y
font_info[chr_index].raster_addr:=old_raster_addr;@/
if not all_match then
begin @/
error (' ');   {skip to next line}@/
@z

@x
check_match(raster_addr,directory_ptr,all_match);
@y
check_match(new_pointer,directory_ptr,all_match);
@z

@x
raster_addr:=1;@/
@y
raster_addr:=1;@/
new_pointer := 1;@/
@z