(******************************************************************************) (* HARDCOPY.MOD *) (* *) (* Implements the structures used to initialise printers supported by *) (* MetaWINDOW. The structures ar initialised using TopSpeed's facility for *) (* initialising aggregate constants. *) (* *) (* PSW 06/28/91 08:30am *) (******************************************************************************) IMPLEMENTATION MODULE HardCopy; (* * Graphix * Release 3.7 * (c) Copyright 1986-1992 PMI * Green Bay, Wisconsin * (414) 468-6040 * All rights reserved * *) FROM GrConst IMPORT HCInfoRec, HC_ROT, HC_XL, HC_ASC; CONST (*** This is about as generic as is possible. Base printer is an 8 pin ***) (*** Epson model MX-80F/T. Mode is 60 dpi (h) by 72 dpi (v). ***) _EPLOInfo = HCInfoRec ( 8, (* pins *) 7, (* init codes *) init(ESC,040H,ESC,033H,018H,CR,LF,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), 2, (* quit, reset codes *) reset(ESC,040H,0,0,0,0,0,0,0,0,0,0,0,0,0,0), 2, (* line header *) header(ESC,04BH,0,0,0,0,0,0), 0, (* postamble *) pstam(0,0,0,0,0,0,0,0), 2, (* line trailer *) trailer(CR,LF,0,0,0,0,0,0,0,0,0,0,0,0,0,0), HC_ROT, (* Options *) 0, (* printer port *) hcSIG('H','C'), (* signature *) 00FH, (* max index in translate table *) xlaTable(0,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH) ); (* EPLOInfo *) (*** This is a 8 pin Epson Mode is 120 dpi (h) by 72 dpi (v). ***) _EPHIInfo = HCInfoRec ( 8, (* pins *) 7, (* init codes *) init(ESC,040H,ESC,033H,018H,CR,LF,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), 2, (* quit, reset codes *) reset(ESC,040H,0,0,0,0,0,0,0,0,0,0,0,0,0,0), 2, (* line header *) header(ESC,04CH,0,0,0,0,0,0), 0, (* postamble *) pstam(0,0,0,0,0,0,0,0), 2, (* line trailer *) trailer(CR,LF,0,0,0,0,0,0,0,0,0,0,0,0,0,0), 0, (* Options *) 0, (* printer port *) hcSIG('H','C'), (* signature *) 00FH, (* max index in translate table *) xlaTable(0,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH) ); (* EPHIInfo *) (*** Hp LaserJet configuration. 75 dpi (h) by 75 dpi (v), rotated. ***) _HPLOInfo = HCInfoRec ( 1, (* pins *) 11, (* init codes *) init(ESC,02AH,074H,037H,035H,052H,ESC,02AH,072H,030H,041H,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), 6, (* quit, reset codes *) reset(ESC,02AH,052H,042H,CR,FF,0,0,0,0,0,0,0,0,0,0), 3, (* line header *) header(ESC,02AH,062H,0,0,0,0,0), 1, (* postamble *) pstam(057H,0,0,0,0,0,0,0), 0, (* line trailer *) trailer(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), HC_ASC+HC_ROT, (* Options. MUST send ASCII length for HP Laserjet *) 080H, (* printer port *) hcSIG('H','C'), (* signature *) 00FH, (* max index in translate table *) xlaTable(0,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH) ); (* HPLOInfo *) (*** Hp LaserJet configuration. 150 dpi (h) by 150 dpi (v), rotated. ***) _HPMEDInfo = HCInfoRec ( 1, (* pins *) 12, (* init codes *) init(ESC,02AH,074H,031H,035H,030H,052H,ESC,02AH,072H,030H,041H,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), 6, (* quit, reset codes *) reset(ESC,02AH,052H,042H,CR,FF,0,0,0,0,0,0,0,0,0,0), 3, (* line header *) header(ESC,02AH,062H,0,0,0,0,0), 1, (* postamble *) pstam(057H,0,0,0,0,0,0,0), 0, (* line trailer *) trailer(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), HC_ASC, (* Options. MUST send ASCII length for HP Laserjet *) 080H, (* printer port *) hcSIG('H','C'), (* signature *) 00FH, (* max index in translate table *) xlaTable(0,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH) ); (* HPMEDInfo *) (*** Hp LaserJet configuration. 300 dpi (h) by 300 dpi (v), rotated. ***) _HPHIInfo = HCInfoRec ( 1, (* pins *) 12, (* init codes *) init(ESC,02AH,074H,033H,030H,030H,052H,ESC,02AH,072H,030H,041H,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), 6, (* quit, reset codes *) reset(ESC,02AH,052H,042H,CR,FF,0,0,0,0,0,0,0,0,0,0), 3, (* line header *) header(ESC,02AH,062H,0,0,0,0,0), 1, (* postamble *) pstam(057H,0,0,0,0,0,0,0), 0, (* line trailer *) trailer(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), HC_ASC, (* Options. MUST send ASCII length for HP Laserjet *) 080H, (* printer port *) hcSIG('H','C'), (* signature *) 00FH, (* max index in translate table *) xlaTable(0,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH) ); (* HPHIInfo *) (*** Hard Copy Info Structure with an invalid signature to disable ***) (*** HardCopy (and PrintScreen). ***) _NULInfo = HCInfoRec ( 0, (* pins *) 0, (* init codes *) init(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), 0, (* quit, reset codes *) reset(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), 0, (* line header *) header(0,0,0,0,0,0,0,0), 0, (* postamble *) pstam(0,0,0,0,0,0,0,0), 0, (* line trailer *) trailer(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0), 0, (* Options *) 0, (* printer port *) hcSIG(0,0), (* signature *) 0, (* max index in translate table *) xlaTable(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0) ); (* NULInfo *) BEGIN EPLOInfo := _EPLOInfo; EPHIInfo := _EPHIInfo; HPLOInfo := _HPLOInfo; HPMEDInfo := _HPMEDInfo; HPHIInfo := _HPHIInfo; NULInfo := _NULInfo; END HardCopy.