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

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

/ 1	OS/8 V3D	FORTRAN II	DISK/DECTAPE
/					R/W SUBROUTINE
/
/	14-SEP-78		WOLFGANG HOUBEN
/
/	CALL RDISK ( IBLK , NBLK , ARRAY )
/	CALL WDISK ( IBLK , NBLK , ARRAY )
/
	ENTRY	RDISK
	ENTRY	WDISK
	OPDEF	KRS	6034
	OPDEF	BSW	7002
	OPDEF	JMSI	4400
	DUMMY	IBLK
	DUMMY	NBLK
	DUMMY	ARRAY
IBLK,	BLOCK	2
NBLK,	BLOCK	2
ARRAY,	BLOCK	2
XPNT,	IBLK
PNTR,	0
CNTR,	0
RW,	0
OLDBLK,	0
DIR,	0
/
WDISK,	BLOCK	2	/ WRITE ROUTINE
	TAD	(4000
	DCA	RW	/ READ/WRITE SWITCH
	TAD	WDISK
	DCA	RDISK
	TAD	WDISK#
	DCA	RDISK#
	JMP	RWCOM	/ GOTO COMMON ROUTINE
/
IOER,	1117;0522	/ "IOER" ERROR MESSAGE
/
RDISK,	BLOCK	2	/ READ ROUTINE
	DCA	RW
/
RWCOM,	TAD	XPNT
	DCA	PNTR
	TAD	(-6
	DCA	CNTR
A1,	TAD I	RDISK
	INC	RDISK#
	DCA I	PNTR
	INC	PNTR
	ISZ	CNTR
	JMP	A1
/
	TAD I	IBLK
	DCA	ARG3	/ START BLOCK ON DISK
/
	TAD	OLDBLK	/ GET LAST BLOCK
	CIA
	TAD	ARG3	/ SUB THE BLOCK #
	TAD	(-7	/ SUB SEVEN
	SMA CLA
	IAC
	DCA	DIR	/ LOAD DIRECTION BIT
/
	TAD I	NBLK
	DCA	PNTR	/ SAVE FOR A MOMENT
	TAD	PNTR
	TAD	ARG3
	DCA	OLDBLK	/ SET NEW OLDBLK
/
	TAD	PNTR	/ GET THE BLK # AGAIN
	CLL RAL
	AND	(37
	BSW
	TAD	RW	/ R/W BIT
	TAD	DIR	/ ADD THE DIRECTION BIT
	DCA	ARG1	/ # OF BLOCKS TO TRANSFER
	TAD	ARRAY#
	DCA	ARG2	/ BUFFER ADDR IN CORE
	TAD	ARRAY
	AND	(70
	TAD	ARG1
	DCA	ARG1	/ BUFFER FIELD
/
	CPAGE	7	/ NEXT SEVEN LOC'S
			/ ON ONE PAGE !!!
	6201		/ CIF 00
	JMSI	(7607	/ SYSTEM HANDLER ENTRY
ARG1,	0
ARG2,	0
ARG3,	0
	JMP	IOERR	/ ERROR RETURN
	KSF		/ TEST ^C
	JMP	RETURN
	TAD	(200	/ SET PARITY BIT
	KRS
	TAD	(-203
	SNA CLA		/ ^C ?
	JMP	EXIT	/ YES:EXIT
RETURN,	RETRN	RDISK
/
IOERR,	CALL	1,ERROR
	ARG	IOER
/
EXIT,	CALL	0,EXIT
	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