home *** CD-ROM | disk | FTP | other *** search
- CONST
- Date = 'v5.0, 1 Oct 89'; {last revision of this program}
- Max_Length = 3264; {max number of characters or dots in a output line}
- {Epson: 240 dpi * 13.6in/line}
- {HP: 300dpi * 8in/line = 2400}
- Max_Width = 150; {of a character in dots}
- Max_Height = 150; {of a character in dots}
- Max_Width_Bytes = TRUNC(0.99+Max_Width/8); {width of character in bytes}
-
- {default problem parameters - TurboPascal Initialized 'Constants'}
- sign_type : (sign,banner) = sign; {type of sign}
- block_type : (letter,block,overstrike,bit) = letter; {output type}
- block_char : CHAR = #177; {square block}
- os_strng : STRING[5] = '*XO'; {overstrike string}
- font_fn : STRING[14] = 'Font.fnt';{font filename}
- font_fni : STRING[14] = 'Font.fnx';{font index filename}
- mult_w : INTEGER = 1; {height multiplier}
- mult_h : INTEGER = 1; {width multiplier}
- inv_video : BOOLEAN = FALSE; {inverse b/w?}
- centering : BOOLEAN = TRUE; {should center output?}
- given_offset : INTEGER = 0; {left margin}
- given_width : INTEGER = 0; {width of output}
- input_device : (keyboard,text_file) = keyboard; {input from where?}
- in_fn : STRING[14] = 'Signs.in'; {input filename}
- output_device : (screen,printr,recd_file) = screen; {output to?}
- device_size : (wide,normal) = normal; {is it wide?}
- num_copies : INTEGER = 1; {multiple copies?}
- prt_type : (epson,ids,hp,dumb) = epson; {what type of prt?}
- prt_cpi : (pica,elite,squeezed,tiny) = squeezed; {chars/inch}
- prt_lpi : (six,eight,ten,twelve) = twelve; {lines/inch}
- prt_color : (black,red,green,blue) = black; {color}
- graphic_dens : (single,double,triple,quad)= single; {for bit output}
- out_fn : STRING[14] = 'Signs.out'; {output filename}
-
- font_width : INTEGER = 0;
- font_height : INTEGER = 0; {size of font in use}
- ff_open : BOOLEAN = FALSE; {is ff open and ok?}
-
- TYPE
- CHAR_INDEX_RECORD = RECORD {points to char in soft font file}
- character : CHAR; {the character}
- position : WORD; {where found in font file?}
- top_offset : INTEGER; {how far down does character start}
- left_offset : INTEGER; {how far left does character start}
- width : INTEGER; {how wide is it}
- height : INTEGER; {how high}
- delta_x : INTEGER; {how far should 'cursor' move?}
- END; {record}
-
- PTR_CHAR_MAP_8 = ^CHAR_MAP_8;
- CHAR_MAP_8 = RECORD
- next : PTR_CHAR_MAP_8;
- back : PTR_CHAR_MAP_8;
- map : ARRAY[1..56,1..7] OF BYTE;
- END; {record}
-
- PTR_CHAR_MAP_12 = ^CHAR_MAP_12;
- CHAR_MAP_12 = RECORD
- next : PTR_CHAR_MAP_12;
- back : PTR_CHAR_MAP_12;
- map : ARRAY[1..80,1..10] OF BYTE;
- END; {record}
-
- PTR_CHAR_MAP_18 = ^CHAR_MAP_18;
- CHAR_MAP_18 = RECORD
- next : PTR_CHAR_MAP_18;
- back : PTR_CHAR_MAP_18;
- map : ARRAY[1..104,1..13] OF BYTE;
- END; {record}
-
- PTR_CHAR_MAP_24 = ^CHAR_MAP_24;
- CHAR_MAP_24 = RECORD
- next : PTR_CHAR_MAP_24;
- back : PTR_CHAR_MAP_24;
- map : ARRAY[1..128,1..16] OF BYTE;
- END; {record}
-
- PTR_CHAR_MAP_30 = ^CHAR_MAP_30;
- CHAR_MAP_30 = RECORD
- next : PTR_CHAR_MAP_30;
- back : PTR_CHAR_MAP_30;
- map : ARRAY[1..160,1..20] OF BYTE;
- END; {record}
-
- OUT_LINE_REC = RECORD
- len : INTEGER;
- chr : ARRAY[1..Max_Length] OF CHAR;
- ichr : ARRAY[1..Max_Length] OF CHAR;
- END; {record}
-
- OUT_GRAPHIC_REC = RECORD
- len : INTEGER;
- chr : ARRAY[1..Max_Length] OF CHAR;
- END; {record}
-
- S255 = STRING[255]; {for input}
- S14 = STRING[14]; {for filenames}
- S2 = STRING[2]; {for Hex input}
-