Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ printer3812(5) — AOS 4.3

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ibm3812pp(8)

ppt(8)

PRINTER3812(5)  —  

NAME

printer3812 − IBM 3812 Pageprinter status information

SYNOPSIS

#include <printer3812.h>

DESCRIPTION

Printer3812.h describes the status information that is read from the printer.  It also contains the print_3812_flags data structure that is used to indicate which 3812 messages are to be passed to the filter. 

/∗
 ∗ Messages from Printer
 ∗/
#define POWER_ON0x14/∗ Power on reset status∗/
#define PAGE_DONE0x10/∗ Page in exit tray∗/
#define INTERVENTION0x11/∗ Intervention required∗/
#define I_CLEARED0x15/∗ Intervention cleared∗/
#define COMMAND_ERR0x12/∗ Command exception status∗/
#define PRINTER_ERR0x13/∗ Printer Failure∗/
/∗
 ∗ Intervention Required types:
 ∗/
#define PAPER_JAM0x01/∗ Paper jam∗/
#define TONER_LOW0x02/∗ Toner supply low∗/
#define EXIT_FULL0x03/∗ Exit tray full∗/
#define OUT_OF_PAPER0x04/∗ Paper supply empty∗/
#define STOP_KEY0x05/∗ Stop key depressed∗/
#define CANCEL_KEY0x06/∗ Cancel key depressed∗/
#define PMP_STOP0x07/∗ PMP STOP command∗/
#define COVER_OPEN0x08/∗ Cover open∗/
#define OFFSET_ERR0x09/∗ Job offset malfunction∗/
#define MEMORY_ERR0x0A/∗ Page Map memory error∗/
/∗
 ∗ Intervention Cleared types:
 ∗/
#define CLR_PAPER_JAM0x01/∗ Paper jam cleared∗/
#define CLR_TONER_LOW0x02/∗ Toner supply low cleared∗/
#define CLR_EXIT_FULL0x03/∗ Exit tray full cleared∗/
#define CLR_NO_PAPER0x04/∗ Paper supply replenished∗/
#define START_KEY0x05/∗ Start key depressed∗/
#define CLR_COVER_OPEN0x08/∗ Cover closed∗/
/∗
 ∗ Command exception status types:
 ∗/
#define BAD_PMP_CMD0x01/∗ Invalid PMP command code∗/
#define BAD_PMP_PARAM0x02/∗ Invalid PMP parameter∗/
#define OUT_OF_PAGE_PAT0x03/∗ Pattern out of page∗/
#define OUT_OF_PAGE_VEC0x04/∗ Vector out of page∗/
#define OUT_OF_STORAGE0x05/∗ Insufficient storage∗/
#define UNDEFINED_LIB0x06/∗ Undefined library file∗/
#define EXCEED_NEST_LIM0x07/∗ Macro nesting limit exceed∗/
 static
char ∗irstatus[] = {"Unknown",
"Paper jam",
"Toner supply is low",
"Exit tray is full",
"Out of paper",
"Stop key was depressed",
"Cancel key was depressed",
"Printer stopped via PMP STOP command",
"Cover open",
"Job offset malfunction",
"Page map memory error",
      };
#define IRSTATUS_CNT (sizeof irstatus/sizeof irstatus[0])
 static
char ∗ircleared[] = {"Invalid status",
"Paper jam cleared",
"Toner supply replenished",
"Exit tray cleared",
"Paper supply replenished",
"Start key",
"Invalid status(6)",
"Invalid status(7)",
"Cover closed",
    };
#define IRCLEARED_CNT (sizeof ircleared/sizeof ircleared[0])
 static
char ∗cmd_excp[] = {"Invalid status",
"Bad PMP command",
"Bad PMP parameter",
"Out of page pattern",
"Out of page vector",
"Out of storage in printer",
"Undefined library file",
"Macro nesting limit exceeded"
   };
#define CMD_EXCP_CNT (sizeof cmd_excp/sizeof cmd_excp[0])
/∗
 ∗ The following structure (print_3812_flags) indicates what error the calling
 ∗ program wants to know about.  There is one field (short) for each error
 ∗ message defined for the IBM 3812 Pageprinter.  If the field is 0,
 ∗ then ignore; if 1, then return the message to filter.
 ∗/
#define IBM3812_PMP_DATA 1
#define IBM3812_ASCII_DATA 2
#define IBM3812_IGNORE_ERR_MSG 0
#define IBM3812_RETURN_ERR_MSG 1
 typedef struct {
    short type;
    short power_on;
    short page_done;
    short intervention[IRSTATUS_CNT];
    short i_cleared[IRCLEARED_CNT];
    short command_err[CMD_EXCP_CNT];
    short printer_err;
    long  sequence_id;
    char username[30];
    char hostname[30];
} print_3812_flags;
 

SEE ALSO

ibm3812pp(8), ppt(8)

IBM 3812 Pageprinter Programming Reference, S544-3268

PRPQs 5799-WZQ/5799-PFF: IBM/4.3  —  31 Mar 1986

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026