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

⟦979138b8a⟧

    Length: 4256 (0x10a0)
    Notes: pts_type(SC)
    Names: »SCWRIT.SC«

Derivation

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

PTS(SC)

 IDENT SCWRIT 80.10.28 NJ 
 DDUM NJDDIV



* THIS MODULE CONTAINS THE ROUTINES NECESSARY 
* FOR WRITING ON THE VDU: 
* 
* SCWRIT - CAN BE USED FOR WRITING ANYWHERE ON THE SCREEN 
* 
* SCRWR - WRITES WHERE THE CURSOR IS NOW
* 
* ERWRIT - WRITES A SPECIFIED BUFFER ON LINE 23 
 PDIV 
 ENTRY SCWRIT 
 ENTRY SCRWR
 ENTRY ERWRIT 
 EXPROC POSCUR,PBIN,PBIN
 EXPROC PUSH,PBIN 
 EXPROC PULL,PBIN 
* 
* 
 INCLUDE EQUATE 
* 
 EJECT
SCWRIT PROC BUF,LEN,ROW,COL 
 PSTRG BUF
 PBIN LEN 
 PBIN ROW,COL 
* 
* THE PROCEDURE WRITES ANY BUFFER ON A SCREEN 
*   BUF - WHERE TO WRITE FROM 
*   LEN - THE NBR OF BYTES TO WRITE 
* THE RETURNCODE IS SET BY THE WRITE STATEMENT
* 
* IF LENGTH EXCEEDS 80, THE BUFFER IS TRUNCATED 
* 
* ALTERED FIELDS: 
*     TSCBUF - FORM CTRL CHAR + TEXT TO BE WRITTEN
* 

 PERF PUSH,CBIN1
 MOVE TBIN1,LEN 
 CBNG TBIN1,CBIN80,SCWR010 LENGTH TO BIG? 
 MOVE TBIN1,CBIN80 IF SO, TRUNCATE
SCWR010 
 PERF POSCUR,ROW,COL
 PERF SCRWR,BUF,TBIN1 
 PERF PULL,CBIN1
 RET
 PEND 
 EJECT
SCRWR PROC BUF,LEN
 PSTRG BUF
 PBIN LEN 
* 
* THE PROCEDURE WRITES ANY BUFFER ON A SCREEN 
* WHEREVER THE CURSOR IS POSITIONED 
* 
 PERF PUSH,CBIN1
 MOVE TSTR2,=X'2B2B'
 MOVE TSCBUF,BUF
 INSRT TSCBUF,CBIN0,CBIN2,TSTR2,CBIN0 
 MOVE TBIN1,LEN 
 ADD TBIN1,CBIN2 ADJUST LENGTH
 WRITE DSDY,TSCBUF,TBIN1 WRITE BUFFER TO SCREEN 
 PERF PULL,CBIN1
 RET
 PEND 
 EJECT
ERWRIT PROC BUF 
 PSTRG BUF
* 
* THE PROCEDURE WRITES ANY MESSAGE ON LINE 23 
* 
 MOVE TP1,=W'23'
 MOVE TP2,CBIN1 
 PERF POSCUR,TP1,TP2
 DSC1 DSDY,ERASE,CBIN80 ERASE LINE
 MOVE TSCBUF,BUF
 MOVE TSTR2,=X'2B2B'
 INSRT TSCBUF,CBIN0,CBIN2,TSTR2,CBIN0 
 WRITE DSDY,TSCBUF,CBIN80 
 RET
 PEND 
 END

Full view