File RK08NS.PA (PAL assembler source file)

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

/2 RK8 NON SYSTEM HANDLER
/
/
/
/
/
/
/
/
/
/COPYRIGHT  (C)  1974,1975 BY DIGITAL EQUIPMENT CORPORATION
/
/
/
/
/
/
/
/
/
/
/THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT NOTICE
/AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
/CORPORATION.  DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY
/FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT.
/
/THE SOFTWARE DESCRIBED IN THIS DOCUMENT IS FURNISHED TO THE PURCHASER
/UNDER A LICENSE FOR USE ON A SINGLE COMPUTER SYSTEM AND CAN BE COPIED
/(WITH INCLUSION OF DIGITAL'S COPYRIGHT NOTICE) ONLY FOR USE IN SUCH
/SYSTEM, EXCEPT AS MAY OTHERWISE BE PROVIDED IN WRITING BY DIGITAL.
/
/DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR THE USE
/OR RELIABILITY OF ITS SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY
/DIGITAL.
/
/
/
/
/
/
/
/
/
/
	*0
	-4

DEVICE RK01;DEVICE RKA0;4050;20;ZBLOCK 2
DEVICE RK01;DEVICE RKA1;4050;21;ZBLOCK 2
DEVICE RK01;DEVICE RKA2;4050;22;ZBLOCK 2
DEVICE RK01;DEVICE RKA3;4050;23;ZBLOCK 2

	DLDC=6732
	DCLS=6742
	DRDS=6741
	DSKD=6745
	DSKE=6747
	DCLA=6751
	DLWC=6753
	DLCA=6755
	DLDR=6733

	RKVERSION=1

/V3 CHANGES:

/1.	VERSION # IS NOW 1
/2.	A FULL 4K READ OR WRITE IS NOW LEGAL

	*200
/THE ENTRY POINTS FOR RK8 ARE SET AT 20-23. VITAL!!

RLOC,	0		/FOR BUFFER ADDRESS
RREC,	0		/HOLDS RECORD NO.
R76,	76
RDLDR,	DLDR
RKANO,	0
RKAISZ,	ISZ RKANO
RBLKCT,	0		/HOLDS TOTAL WORD COUNT
RERRCT,	0		/# ERROR TRIES
R177,	177
R40,	40
RM3,	-3
R400,	400
R7400,	7400
RKA,	0		/HOLDS ARGUMENT ADDRESS
R34,	34
RZERO,	RKVERSION
	IFNZRO .-220 <ADRERR,QQQ>
RKA0,	ISZ RKANO
RKA1,	ISZ RKANO
RKA2,	ISZ RKANO
RKA3,	ISZ RKANO
R7600,	7600
	TAD RM3
	DCA RERRCT	/3 TRIES ON ERROR
	TAD RKANO	/THIS CODE RESTORES THE ISZ RKANO
	CMA		/WHICH WAS DESTROYED IN THE CALL
	TAD RKATAD
	DCA RFUNCT
	CLA CLL CML RTR
	TAD RFUNCT	/FORM DCA RKAN,WHERE RKAN WAS CALLED
	DCA RKADCA
	RDF
	TAD RCDIF	/RESTORE TO PROPER FIELD
	DCA REXIT
RFUNCT,	HLT		/CONTAINS TAD RKAN WHEN EXECUTED
	DCA RKA		/SO WE SAVE ADDRESS OF ARGUMENTS
	TAD RKAISZ	/AND NOW RESTORE THE ISZ RKANO
RKADCA,	HLT
	TAD I RKA	/FUNCTION WORD
	DCA RFUNCT
	ISZ RKA
	CLA CMA		/BUFFER ADDRESS -1
	TAD I RKA
	DCA RLOC
	ISZ RKA
	TAD I RKA	/RECORD NUMBER
	DCA RREC
	TAD RFUNCT	/NOW FORM RK8 IOT FROM FUNCTION.
	CLL RAL		/READ/WRITE TO LINK
	AND R7600	/ISOLATE WORD COUNT
	DCA RBLKCT
	RTL		/READ=6733,WRITE=6735
	TAD RDLDR
	DCA RINST

RLOOP, TAD RLOC /LOAD CURRENT ADDRESS DLCA TAD RBLKCT /TEST WORD COUNT FOR SIZE. RKATAD, TAD R7600 /FULL=256, HALF=128 SZA CLA TAD R7600 TAD R7600 DLWC /LOAD WORD COUNT TAD RFUNCT /LOADING COMMAND WORD WITH FIELD CMA RAR /AND DISK SELECTION AND R34 TAD RKANO CMA RAL AND R76 DLDC DCLS /CLEARS SELECT ERROR IF STILL UP TAD RREC RINST, HLT /GETS DISK IOT DSKD /TEST COMPLETION FLAG SKP CLA /NOT DONE YET JMP RCTLC /DONE. CHECK FOR ^C DSKE /IS ERROR UP? JMP .-4 RERROR, ISZ RERRCT /ERROR BUMP COUNT JMP .+4 DCA RKANO /IT'S ALL OVER. CLEAR FOR RECALL CLA CLL CML RAR JMP RETRN+1 /FATAL ERROR DRDS /LOOK AT STSTUS AND R40 /TRACK NOT FOUND BIT ISZ RZERO /CARRY OVER FROM SYSTEM HANDLER JMP .-1 SNA CLA JMP RLOOP /TRY AGAIN DCLA /RECALIBRATE DSKD JMP .-1 JMP RLOOP /AND TRY AGAIN
RNEXT, DSKE /TRANSFER DONE. IS ERROR UP? SKP JMP RERROR /YEP.TOUGH LUCK ISZ RREC /BUMP RECORD NUMBER TAD RLOC TAD R400 /BUMP CURRENT ADDRESS DCA RLOC TAD RBLKCT /DONE WITH ALL TRANSFERS? SNA JMP RDONE /V3 0 OK HERE CLL CML TAD R7400 SZL SNA JMP RDONE DCA RBLKCT /NO..UPDATE TOTAL WORD COUNT JMP RLOOP /AND DO THE TRANSFER RDONE, CLA DCA RKANO /CLEAR FOR RECALL RETRN, ISZ RKA ISZ RKA REXIT, HLT JMP I RKA RCTLC, KRS /TEST FOR ^C IN KEYBOARD BUFFER AND R177 /WITH THE FLAG UP TAD RM3 SNA CLA KSF JMP RNEXT /NO ^C, KEEP GOING RCDIF, CIF CDF 0 JMP I R7600 $



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