File IBIT.SB (8k SABR macro assembler source file)

Directory of image this file is from
This file as a plain text file

/ SUBROUTINE IN SABR
/ BIT-BEHANDLUNG FUER J-TES BIT IM WORT K
/ K DARF AUCH INDIZIERT SEIN
/ HAT DREI EINGAENGE :
/	FUNCTION IBIT(K,J) - Z. B. M=IBIT(K,J)
/     SUBROUTINE ZBIT(K,J) - J-TES BIT WIRD NULL GESETZT
/     SUBROUTINE SETB(K,J) - J-TES BIT WIRD EINS GESETZT
/ DECUS #8-706
	ENTRY SETB
	ENTRY ZBIT
	ENTRY IBIT
	DUMMY \K
	DUMMY \J
\K,	BLOCK 2
\J,	BLOCK 2
\IBIT,	0
IBIT,	BLOCK 2
	TAD MN0
	DCA L3
L2,	TAD I IBIT
	DCA \K
	INC IBIT#
	TAD I IBIT
	DCA \K#
	INC IBIT#
	TAD I IBIT
	DCA \J
	INC IBIT#
	TAD I IBIT
	DCA \J#
	INC IBIT#
/ FUNCTION TO RETURN A ONE IF BIT J IN K IS TRUE
/ OR A ZERO IF THAT BIT IS FALSE
	TAD I \K	/ GET K
	DCA \IBIT
	TAD I \J	/ FIND WHICH BIT IS NEEDED
	CMA
	DCA \J		/ SET UP COUNTER
	CLA CLL CML RAR	/ SET MASK IN BIT 0
	ISZ \J		/ SEE IF J WAS 0
	SKP		/ NOPE - COUNT IT OUT
	JMP L3		/ YES - READY TO GO
MBK,	RAR		/ PUT MASK IN BIT 1
	ISZ \J		/ MOVE MASK BIT AS NEEDED
	JMP MBK
L3,	NOP		/ DROPS THROUGH ON IBIT
	AND \IBIT	/ NOW MASK THE WORD
	SNA		/ IS IT FALSE ?
	JMP MSI		/ YES
	CLA IAC		/ SET AC FOR TRUE
MSI,	DCA \IBIT
	TAD \IBIT
	RETRN IBIT

/ SUBROUTINE ZBIT(K,J) TO SET BIT J OF K TO ZERO ZBIT, BLOCK 2 TAD ZBIT DCA IBIT TAD ZBIT# DCA IBIT# TAD ML5 DCA L3 JMP L2 L5, CMA AND \IBIT / NOW MASK THE WORD DCA I \K / REPLACE THE NEW WORD RETRN IBIT ML5, JMP L5 ML4, JMP L4 MN0, NOP / SUBROUTINE SETB(K,J) TO SET BIT J OF K TO ONE SETB, BLOCK 2 TAD ML4 DCA L3 7621 / CLEAR AC AND MQ TAD SETB DCA IBIT TAD SETB# DCA IBIT# JMP L2 L4, 7421 / MOVE MASK TO MQ TAD \IBIT / GET THE WORD 7501 / OR WITH MQ DCA I \K / REPLACE THE NEW WORD RETRN IBIT END



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search