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

⟦3d00dc45d⟧

    Length: 10938 (0x2aba)
    Notes: pts_type(SC)
    Names: »DENTER.SC«

Derivation

└─⟦48601905a⟧ Bits:30009668 Philips computer tape "600121"
    └─⟦this⟧ »S:DU/DENTER.SC« 
└─⟦79fbed147⟧ Bits:30009697 Philips computer tape "600414"
    └─⟦this⟧ »S:DU/DENTER.SC« 
└─⟦d2a299635⟧ Bits:30009698 Philips computer tape "600415"
    └─⟦this⟧ »S:DU/DENTER.SC« 

PTS(SC)

	IDENT	DENTER	UPD 80-03-04/CHST 
* 
*    A STANDARD PROGRAM PACKAGE HANDLING
*    A COMPLETE PICTURE ON A DISPLAY SCREEN 
* 
*    RUNNING UNDER:  CREDIT REL 3.1 
*                    TOSS   REL 8.1 
* 
	DDUM	DDINIT
 PDIV 
* 
 ENTRY DECLRA CLEAR ALL VARIABLE FIELDS 
 ENTRY DECLRS CLEAR SOME VARIABLE FIELDS
 ENTRY DECLRN CLEAR NO VARIABLE FIELDS
 ENTRY DECLRD 
	ENTRY	DERR	DENTER-ERROR
	EXT	DERROR	ERROR-MESSAGES
	EXT	CANC	-ROUTINES 
* 
 EXT DESTAT BUILD THE STATUSLINE
 EXT DECHK1 STANDARD CHECK ROUTINE NO. 1
 EXT DECHK2 STANDARD CHECK ROUTINE NO. 2
 EXT DECHK3 STANDARD CHECK ROUTINE NO. 3
 EXT DECHK4 STANDARD CHECK ROUTINE NO. 4
 EXT DECHK5 STANDARD CHECK ROUTINE NO.5 
 EXT DECHK6 STANDARD CHECK ROUTINE NO. 6
 EXT DECHK7 STANDARD CHECK ROUTINE NO. 7
 EXT APP USER ROUTINE TO HANDLE 
			APPL VALUES
 EXT DETCHK USER ROUTINE TO EVALUATE
			CONDITIONAL TABULATION 
* 
	EXT	EMPTYT	ASSEMBLY SUBROUTINE EMPTYT  - 
			TEST IF DATA ITEM IS EMPTY 
 EXT MASK 
* 
 INCLUDE DELITT,LIST
 EJECT
* 
*    CLEAR ALL VARIABLE FIELD BEFORE HANDLING THE PICTURE 
* 
DECLRA PROC 
	PERF	DENTER,W1 
	RET
 PEND 
* 
*    CLEAR SOME VARIABLE FIELDS BEFORE HANDLING THE PICTURE 
* 
DECLRS PROC 
	PERF	DENTER,W2 
	RET
 PEND 
* 
*    CLEAR NO VARIABLE FIELDS BEFORE HANDLING THE PICTURE 
* 
DECLRN PROC 
	PERF	DENTER,W3 
	RET
 PEND 
* 
*    CLEAR SOME VARIABLE FILEDS AND DISPLAY THE REST
*    OF THE VARIABLE FIELDS BEFORE HANDLING THE PICTURE 
* 
DECLRD PROC 
* 
 PERF DENTER,W4 
 RET
 PEND 
* 
*     ERROR PRINTOUT
* 
DERR	PROC 
	PERF	DENTER,W0 
	RET
	PEND 
 EJECT
DENTER PROC OPT 

	MOVE	DEBINW2,OPT	MOVE TO VARIABLE
			TO ALLOW INSTR.S CMP AND IB
	CMP	DEBINW2,W0	"DEERR" ENTRY ? 
	BE	ERRPRINT	YES !

 TBT DEPROMPT,ENTIRE JUMP IF ENTIRE FORMAT
			SHOULD BE DIDELAYED
* 
*    ONLY VARIABLE FIELDS 
* 
 IB DEBINW2		C
		CLEARA		C 
		CLEARS		C 
		CONT		C 
		CLEARD
* 
CLEARA
 ERASE 2,W1,W0 ERASE ALL FROM 1 AND UP
 B CONT 
* 
CLEARS
 ERASE 5,W1,W0 ERASE SOME FROM 1 AND UP 
	B	CONT 
CLEARD
 DISPLAY 3,W1,W0 DISPLAY FROM 1 AND UP
 B CONT 
 EJECT
* 
*    DISPLAY ENTIRE FORMAT
* 
ENTIRE
	CLEAR	DEPROMPT 
 IB DEBINW2	JUMP	C
		ECLRA	ON	C
		ECLRS	ROUTINE	C 
		ECLRN	INDEX	C 
		ECLRN 
* 
*    CLEAR ALL VARIABLES
* 
ECLRA 
 ERASE 3,W1,W0 CLEAR ALL FROM 1 AND UP
			IN MEMORY
 B ECLRN CONTINUE 
* 
*    CLEAR SOME VARIABLES 
* 
ECLRS 
 ERASE 6,W1,W0 CLEAR SOME FIELDS FROM 
			1 AND UP IN MEMORY 
* 
*    CLEAR NO VARIABLES IN MEMORY 
* 
ECLRN 
 DISPLAY 0,W1,W0 DISPLAY ENTIRE FORM
	EJECT
* 
CONT
 GETABX DEBINW4 GET CURRENT INDEX 
 BL KTHOME JUMP IF NO CURRENT FIELD 
CONT5 
 GETFLD 0,DEBINW4,DEBINW3 SEARCH CURRENT POSITION 
 BZ SETCREAD JUMP IF FOUND
 BL KTHOME POSITION NOT FOUND 
* 
*    COMPULSORY FIELD FOUND 
* 
 MOVE DEBINW4,DEBINW3 CHANGE INDEX
 B CONT5 SEARCH AGAIN 
* 
 EJECT
* 
*    SET CURSOR AND READ KEYBOARD 
* 
SETCREAD
	SETCUR		SET CURSOR ON CURRENT FIELD

* 
*    READ TO CURRENT FIELD ON DISPLAY 
* 
READIN
 TBF DENOCHAN,READ50
READ10 MOVE DEBINW1,W0
	MOVE	DEBINW3,W1
 NKI .NE,DEDSDYKB,DEINPUT,DEKTAB5,DEBINW3,DEBINW2 
 BOK READ30 
 XSTAT DEDSDYKB,DEBINW3 
 CALL MASK,DEBINW3,W64
 BNZ READ10 
READ20 EDWRT DEDSSCRN,BELL
 B READ10 
READ30 CBL DEBINW2,W0,READ20
 CBNE DEBINW2,W0,READ40 
 DISPLAY 0,W1,W1 POWER OFF
 B SETCREAD 
READ40 IB DEBINW2,READ10,STATUS,KCOPY 
 SUB DEBINW2,W3 
 CLEAR DENOCHAN 
 RET
READ50
 DYKI DEINPUT,DEKTAB1,DEKTAB2,DEBINW1,		C 
		DEBINW2,DEBINW4 
DYKOUT
 BL ERRPRT ERROR
 CBNL DEBINW2,W0,DYK100 
DYK050
 MOVE DEBINW2,W2
 B ERRCAN 
DYK100
 CBE DEBINW2,W0,ECLRN 
			KEY SWITCHES 
 IB DEBINW2,UPD300,CLEA20 JUMP ON	C 
		UPDATE,ERRCAN,ERRCAN,		C
		UPDATE,UPDATE,UPDATE,UPDATE CONVERTED	C 
		UPDATE,UPDATE,UPDATE,UPDATE END-OF-ITEM-KEY	C 
		UPDATE,KDUPL,KEDIT
	EJECT
* 
*    HANDLE THE RESPECTIVE KEY AS EOI-KEY FIRST 
* 
UPDATE
 CBE DEBINW1,W0,UPD350 JUMP IF LENGTH = 0 
 GETCTL 3,DEBINW4 GET SCHK-NUMBER 
 CBE DEBINW4,W0,UPD050 JUMP IF NOT STANDARD CHECK 
 PERFI DEBINW4,DECHK1,DECHK2,DECHK3		C
		DECHK4,DECHK5,DECHK6,DECHK7 
 IB DEBINW3,UPD100,UPD070,ERRPRINT
* 
*    CONDITIONAL DISPLAYING 
* 
UPD050
 MOVE DEBINW4,W1 INDICATE COND. DIDEL 
 B UPD200 
UPD070
 GETCTL 0,DEBINW3 GET APPL-VALUE
 CBNE DEBINW3,W0,UPD210 JUMP IF APPL VALUE
 B SETCREAD 
* 
*    UNCONDITIONAL DISPLAYING 
* 
UPD100
 MOVE DEBINW4,W2 INDICATE UNCONDITIONAL DIDELAY 
UPD200
 GETCTL 0,DEBINW3 GET APPL-VALUE
 CBE DEBINW3,W0,UPD400 JUMP IF NO APPL VALUE
* 
*    APPL-VALUE DIFFERENT FROM ZERO 
* 
UPD210
	PERF	APP 
 IB DEBINW3,UPD260,SETCREAD,ERRPRINT
 B UPD400 
* 
*    OK AFTER APPL CONTROL
*    UNCONDITIONAL DIDELAYING 
* 
UPD260
 UPDFLD 1,DEINPUT UPDATE FIELD WITH DIDELAYING
UPD300 SET DECHANGE INDICATE CHANGED ITEM 
UPD350
*    JUMP ON FUNCTION KEY INDEX 
 IB DEBINW2,KTFWD,DUMMY,		C 
		KEOI,DUMMY,DUMMY,KTFWD,		C
		KTBWD,KTHOME,KERASE,KKEEP,KTRIGHT,		C 
		KTDOWN,STATUS,KCOPY,DUMMY,DUMMY,KENTER
 SUB DEBINW2,W14 ADJUST EOI-KEY INDEX 
	B	RETUR
RETUR1
	SUB	DEBINW2,W1	ADJUST KEY INDEX
DUMMY 
RETUR 
	CLEAR	DENOCHAN 
 RET
* 
UPD400
 CBE DEBINW4,W2,UPD260 JUMP IF UNCONDITIONAL DIDEL
 UPDFLD 0,DEINPUT UPDATE FIELD DIDEL. COND. 
 B UPD300 
* 
 EJECT
KEOI			COMMON END-OF-ITEM KEY 
KTFWD			TAB. FORWARD 1 STEP 
 TFWD 
	B	TSTTAB 
* 
KTBWD			TABULATION 1 STEP BACKW.
 TBWD 
 B TSTTAB 
* 
KTHOME			TAB. TO HOME POSITION
 THOME
 B TSTTAB 
* 
KTLDOWN			TAB. TO FIRST ON NEXT LINE
 TLDOWN 
 B TSTTAB 
* 
KTLEFT			TAB. TO LEFTMOST 
 TLEFT
 B TSTTAB 
* 
KTRIGHT			TAB. TO RIGHTMOST 
 TRIGHT 
 B TSTTAB 
* 
KTDOWN			TAB 1 DOWN 
 TDOWN
 B TSTTAB 
* 
KTUP			TAB 1 UP 
 TUP

TSTTAB			TEST TAB OUTPUT
 BE READIN OK 
 BL SETCREAD NOT FOUND
 BOFL SETCREAD EMPTY COMPULSORY FIELD 
* 
* 
*    CONDITIONAL TABULATION 
* 
 PERF DETCHK
 CBE DEBINW3,W0,KCOP10
 IB DEBINW2,DUMMY,DUMMY,		C 
		KTFWD,DUMMY,DUMMY,KTFWD,		C 
		KTBWD,KTFWD,KTFWD,KTFWD,		C 
		KTBWD,KTFWD,KTBWD 
*    BRANCH LIST EXHAUSTED - DEBINW2 CLOBBERED BY DETCHK

	B	SETCREAD 


STATUS PERF DESTAT
 B ERRPRT 
	EJECT
KCOPY			HARD COPY 
 MOVE DEBINW3,W1
 PRINT DEDSPRT,DEBINW3,W0 
KCOP10
 B SETCREAD SET CURSOR AND READ 
* 
KDUPL			DUPLICATION 
 MOVE DEBINW2,W3 INDICATE COMMON EOI-KEY
 DUPL DEINPUT DUPLICATION 
 BZ UPD260 DUPL ALLOWED 
 MOVE DEBINW4,W0 INDICATE ILLEGAL EOI-KEY 
 B ERRPRINT DUPL NOT ALLOWED
 EJECT
* 
*    EDIT FIELD 
* 
KEDITX
	MOVE	DEBINW1,W1
KEDIT 
 GETCTL 1,DEBINW3 GET MAXL
 CBNE DEBINW3,W0,KED100 
 EDWRT DEDSSCRN,BELL ACOUSTIC ALARM 
 B SETCREAD 
KED100
 EDFLD DEINPUT,DEKTAB3,DEBINW1,		C
		DEBINW2,DEBINW4 
 B DYKOUT CONTINUE AS FOR DYKI
* 
*       ERASE KEY 
* 
KERASE
	GETABX	DEBINW4 
	ERASE	2,DEBINW4,W0 
* 
*    ENTER KEY
* 
KKEEP 
KENTER
 MOVE DEBINW4,W5 INDICATE COMP.FIELD FOUND
 MOVE DEBINW1,W0 INDICATE NO CLEARING 
 GETFLD 0,DEBINW1,DEBINW3 SEARCH FOR EMPTY COMP. FIELDS 
 BOFL KENT10 EMPTY COMP. FIELD FOUND
 TSTCTL 2 LOOK IF COMPULSORY FIELD
 BZ KENT05 NO!
 CALL EMPTYT,:FMTITEM LOOK IF EMPTY FIELD 
 BP KENT10 YES! 
KENT05
	CBE	DEBINW2,W9,KCOP10
	CBE	DEBINW2,W10,KCOP10 
 MOVE DEBINW2,W3 INDICATE ENTER KEY DEPRESSED 
 RET
* 
*    EMPTY COMPULSORY FIELD FOUND 
* 
KENT10
	MOVE	DEBINW2,W0
 GETFLD 0,DEBINW3,DEBINW2 GET THE COMPULSORY FIELD
	MOVE	DEBINW1,W0
	EJECT
ERRPRT
	CBE	DEBINW2,W16,KEDIT	JUMP IF EDIT 
 CBE DEBINW2,W4,ERRCAN JUMP IF ERRCANEL1
 CBE DEBINW2,W5,ERRCAN JUMP IF ERRCANEL2
 XSTAT DEDSDYKB,DEBINW3 
 CALL MASK,DEBINW3,W64
 BNZ DYK050 
* 
*    ERROR HANDLING 
* 
ERRPRINT
	PERF	DERROR,DEKTAB4
	IB	DEBINW2,SETCREAD,RETUR2,RETUR2,KEDITX 
	B	SETCREAD 
* 
*       CLEAR LAST LINE 
* 
ERRCAN	PERF	CANC
	IB	DEBINW2,SETCREAD,SETCREAD 
 SUB DEBINW2,W3 ADJUST FOR CANCEL1,CANCEL2
 RET
CLEA20
 GETABX DEBINW4 GET CURRENT TAB INDEX 
 DISPLAY 1,DEBINW4,DEBINW4 DISPLAY FIELD
 B SETCREAD CONTINUE
* 
RETUR2
	SUB	DEBINW2,W1 
	RET
* 
BELL FRMT 
 FSL
 FILLR X'07',1
 FMEND

	PEND 

 END

Full view