|
|
DataMuseum.dkPresents historical artifacts from the history of: Philips Data Systems |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Philips Data Systems Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 4548 (0x11c4)
Notes: pts_type(SC)
Names: »BITPUL.SC«
└─⟦025d39960⟧ Bits:30009672 Philips computer tape "600133"
└─⟦this⟧ »A:DSB/BITPUL.SC«
IDENT BITPUL 810612 NJ * * THIS MODULE MAKES IT POSSIBLE TO MANIPULATE BITS * IN A CREDIT DATAITEM * * 4 FUNCTIONS ARE ALLOWED: * BITON SET BIT * BITOFF CLEAR BIT * BITINV INVERT BIT * BITTST TEST BIT * * THE MODULE IS CALLED AS FOLLOWS: * * CALL <FUNCTION>,ITEM,INDEX * * WHERE FUNCTION IS ONE OF THE NAMES DEFINED ABOVE, * ITEM IS THE NAME OF THE ITEM TO BE TESTED * INDEX IS THE BIT POSITION WITHIN ITEM * WHEN INDEX = 0, THE MOST SIGNIFICANT BIT IS TAKEN * * THERE IS NO CHECK ON VALIDITY OF BIT INDEX * IT IS Y O U R RESPONSIBILITY TO ENSURE THAT THIS * VALUE IS WITHIN THE LENGTH OF THE ITEM * ENTRY BITTST ENTRY BITINV ENTRY BITON ENTRY BITOFF EXTRN I:RT1 EXTRN I:EVA0 EJECT BITTST EQU * LDKL A8,BTEST LOAD POINTER TO REQ. BITOPER. RF GETPAR * BITINV EQU * LDKL A8,BINV RF GETPAR * BITON EQU * LDKL A8,BON RF GETPAR * BITOFF EQU * LDKL A8,BOFF * GETPAR EQU * CF A14,I:EVA0 PICK UP ADDR OF 1. ARGUMENT LDR A4,A9 SAVE ADDR IN A4 CF A14,I:EVA0 PICK UP VALUE OF 2. ARGUMENT LD A5,0,A9 LDK A7,X'01' CHECK IF ITEM ON FULLWORD BOUND TM A7,A4 RF(0) WORDB ADK A5,X'08' FIX FOR ITEM ON BYTE BOUND SUK A4,X'01' WORDB EQU * LDR A6,A5 SAVE BIT INDEX SRA A5,3 SPLIT ADDR INTO BYTE + BIT ADR A4,A5 BYTE ADDR IN A4 ANK A6,X'0F' EXTRACT BIT OFFSET ORKL A6,X'3D60' A6 := 'SRL A5,0' LDKL A5,X'8000' INITIAL BIT MASK EXR A6 EXECUTE THE SRL LDR A7,A5 AN A5,0,A4 READ BIT STATUS INTO A5 RF(0) OFF LDK A5,X'01' SET CREDIT COND REG MASK OFF EQU * * UPDATE CREDIT CONDITION REGISTER LD A6,2,A13 SC A5,-2,A6 * * SELECT TYPE OF OPERATOR ABR A8 BRANCH TO THE ADR SELECTED BEFORE * BINV EQU * XRS A7,0,A4 INVERT BIT RF OUT * BON EQU * ORS A7,0,A4 SET BIT RF OUT * BOFF EQU * C1R A7,A7 ANS A7,0,A4 CLEAR BIT * BTEST EQU * OUT EQU * ABL I:RT1 GET OUT END