DataMuseum.dk

Presents historical artifacts from the history of:

Philips Data Systems

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

See our Wiki for more about Philips Data Systems

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦da7c3a276⟧

    Length: 4680 (0x1248)
    Notes: pts_type(SC)
    Names: »UNPPRT.SC«

Derivation

└─⟦35fda6e03⟧ Bits:30009701 Philips computer tape "BARCLAY"
    └─⟦this⟧ »BARCLAY/UNPPRT.SC« 
    └─⟦this⟧ »BARCLAY/UNPPRT.SC« 
└─⟦e276fd206⟧ Bits:30009696 Philips computer tape "600413"
    └─⟦this⟧ »BARCLAY/UNPPRT.SC« 

PTS(SC)

 IDENT UNPPRT 80.11.06 NJ 
 DDUM NJDDIV
 PDIV 
 ENTRY UNPPRT 
 EXPROC EXPAND,PSTRG,PBIN 
 EXPROC PRTLN,PSTRG 
 EXPROC PUSH,PBIN 
 EXPROC PULL,PBIN 
* 
* 
 INCLUDE EQUATE 
* 
* 
 EJECT
UNPPRT PROC BUF 
* 
* THE PROCEDURE HAS MULTIPLE FUNCTIONS: 
* 1. EXTRACT A PRINTLINE AT A TIME FROM THE INPUTBUFFER 
* 2. REPLACE SPACECOMPRESSION CHARACTERS WITH 
*    THE APPRIOPRIATE NUMBER OF SPACES
* 3. HAND A PRINTLINE OVER TO THE PRINTER TASK
* 
* ALTERED FIELDS: 
*     TSTR1 - DC2 
*     TSTR2 
*     TSCBUF
* 
 PSTRG BUF
* 
 PERF PUSH,CBIN6
 MOVE TBIN1,CBIN0 DEFINE A STARTINGPOINT
 MOVE TSTR2,=X'2B2B' START WITH NO-SPACE
UNPP010 
 MOVE TBIN4,=W'81'
 XCOPY TSCBUF,CBIN0,TBIN4,BUF,TBIN1 
			MOVE MAX. POSSIBLE FIELD SIZE
 MOVE TSTR1,DC2 
 MOVE TBIN3,CBIN0 
 MATCH TSCBUF,TBIN3,TBIN4,TSTR1,CBIN0,CBIN1 
			FIND FIRST LINEFEED
 MOVE TBIN2,CBIN0 
 MOVE TSTR1,DC1 
 MATCH TSCBUF,TBIN2,TBIN4,TSTR1,CBIN0,CBIN1 
			FIND FIRST FORMFEED, IF ANY
 BNOK UNPP020 NO FORMFEED PRESETN,
			 ASSUME LINEFEED PRESENT 
 CBL TBIN3,TBIN2,UNPP020 DID LINFEED OCCUR FIRST? 
 ADD TBIN1,TBIN2 NEW STARTINGPOINT FOR NEXT 
 MOVE TBIN4,TBIN2 
 CLEAR TBOOL FF OCCURRED
 B UNPP030
UNPP020 
 ADD TBIN1,TBIN3
 MOVE TBIN4,TBIN3 
 SET TBOOL LF OCCURRED
UNPP030 
 MOVE TBIN5,=W'82'
 SUB TBIN5,TBIN4 HOW MUCH TO ERASE? 
 DLETE TSCBUF,TBIN4,TBIN5 
 MOVE TBIN4,=W'82'
 INSRT TSCBUF,CBIN0,CBIN2,TSTR2,CBIN0 FORM CTRL CHARS 
 XCOPY TSCBUF,TBIN4,CBIN2,TTID,CBIN0 MOVE TASKID
 PERF PRTLN,TSCBUF
 MOVE TSTR2,=' '
 TBT TBOOL,UNPP040 WAS LAST FORMCTRL LINEFEED?
 MOVE TSTR2,='1' SET FORMFEED CTRLCHARS 
UNPP040 
 ADD TBIN1,CBIN1
 XCOPY TSTR1,CBIN0,CBIN1,BUF,TBIN1
 CBE TSTR1,ETX,UNPP090 FINISHED?
 CBE TSTR1,ESC,UNPP090
 B UNPP010
UNPP090 
 PERF PULL,CBIN6
 RET
 PEND 
 END

Full view