$ ! Utility Procedures for the EPSON FX-80 Printer $ ! ============================================== $ ! $ ! --- Prevent other users from communicating $ SET TERM /NOBROADCAST $ ! $ ! --- Direct to the proper sub-procedure $ IF ''P1' .EQS. "CLDSFX80" THEN GOTO CLDSFX80 $ IF ''P1' .EQS. "CLESCFX80" THEN GOTO CLESCFX80 $ IF ''P1' .EQS. "CLFX80" THEN GOTO CLFX80 $ IF ''P1' .EQS. "CLWFX80" THEN GOTO CLWFX80 $ IF ''P1' .EQS. "DSFX80" THEN GOTO DSFX80 $ IF ''P1' .EQS. "ESCFX80" THEN GOTO ESCFX80 $ IF ''P1' .EQS. "OPDSFX80" THEN GOTO DSFX80 $ IF ''P1' .EQS. "OPESCFX80" THEN GOTO ESCFX80 $ IF ''P1' .EQS. "OPFX80" THEN GOTO FX80 $ IF ''P1' .EQS. "OPWFX80" THEN GOTO WFX80 $ IF ''P1' .EQS. "WFX80" THEN GOTO WFX80 $ ! $ ! FX*80 $ ! ===== $FX80: $ ! $ ! --- Escape mechanism $ ON CONTROL_Y THEN GOTO CLFX80 $ ! $ ! --- Allow carriage controls to go through and set width to 72 $ SET TERM /FORM /WIDTH=72 $ ! $ ! --- Open terminal printer and set FX80 for a left margin of 8 $ WRITE SYS$OUTPUT "lN [?5i" $ ! $ ! --- Now write if supposed to $ IF ''P1' .EQS. "OPFX80" THEN GOTO BYE $ TYPEALL 'P2' $ ! $CLFX80: $ ! $ ! --- Rest FX80 and close terminal printer $ WRITE SYS$OUTPUT " [?4ilO " $ ! $ ! --- Reset terminal $ SET TERM /NOFORM /WIDTH=80 $ ! $ ! --- Done $ GOTO BYE $ ! $ ! DSFX*80 $ ! ======= $DSFX80: $ ! $ ! --- Escape mechanism $ ON CONTROL_Y THEN GOTO CLDSFX80 $ ! $ ! --- Allow carriage controls to go through and set width to 72 $ SET TERM /FORM /WIDTH=72 $ ! $ ! --- Open terminal printer and set FX80 for a left margin of 8 $ WRITE SYS$OUTPUT "lGN [?5i" $ ! $ ! --- Now write if supposed to $ IF ''P1' .EQS. "OPDSFX80" THEN GOTO BYE $ TYPEALL 'P2' $ ! $CLDSFX80: $ ! $ ! --- Rest FX80 and close terminal printer $ WRITE SYS$OUTPUT - " [?4ilOH " $ ! $ ! --- Reset terminal $ SET TERM /NOFORM /WIDTH=80 $ ! $ ! --- Done $ GOTO BYE $ ! $ ! ESCFX*80 $ ! ======== $ESCFX80: $ ! $ ! --- Escape mechanism $ ON CONTROL_Y THEN GOTO CLESCFX80 $ ! $ ! --- Allow carriage controls to go through and set width to 132 $ ! --- to allow for compressed mode $ SET TERM /FORM /WIDTH=132 $ WRITE SYS$OUTPUT "<" $ WRITE SYS$OUTPUT "[?3l" $ ! $ ! --- Open terminal printer $ WRITE SYS$OUTPUT "N" $ ! $ ! --- Now write $ IF ''P1' .EQS. "OPESCFX80" THEN GOTO BYE $ TYPEALL 'P2' $ ! $CLESCFX80: $ ! $ ! --- Rest FX80 and close terminal printer $ WRITE SYS$OUTPUT " O " $ ! $ ! --- Reset terminal $ SET TERM /NOFORM /WIDTH=80 $ ! $ ! --- Done $ GOTO BYE $ ! $ ! WFX*80 $ ! ====== $WFX80: $ ! $ ! --- Escape mechanism $ ON CONTROL_Y THEN GOTO CLWFX80 $ ! $ ! --- Allow carriage controls to go through and set width to 132 $ ! --- to allow for compressed mode $ SET TERM /FORM /WIDTH=132 $ ! $ ! --- Open terminal printer $ WRITE SYS$OUTPUT "lN [?5i" $ ! $ ! --- Now write if supposed to $ IF ''P1' .EQS. "OPWFX80" THEN GOTO BYE $ TYPEALL 'P2' $ ! $CLWFX80: $ ! $ ! --- Rest FX80 and close terminal printer $ WRITE SYS$OUTPUT - " [?4ilO " $ ! $ ! --- Reset terminal $ SET TERM /NOFORM /WIDTH=80 $ ! $ ! COMMON EXIT PROCEDURE $ ! ===================== $BYE: $ ! $ ! --- Allow other users to communicate again $ SET TERM /BROADCST $ ! $ ! --- Done $ EXIT