File MOD36

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

*20
//MOD36
	 
/DECODE MODULE 36
/BLOCK 60
	 
/CONTENTS
/   MGETNAM
/   TABGET
/   TABZER
	 
	LODSYM
	 
	SEGMNT 4
	*1400
	36
	 
/GET NEXT VALID FILE NAME
/FROM INUNIT DIRECTORIES
/
MGETNM,	JMP INSET
	ADD TPTR
	STC FILPTR
	ADD TCTR
	STC BETA1
NXTLUP,	XSK I BETA1
	SKP
	JMP RESET
	LDA I FILPTR
	SAE I
	3232 	/ZZ0
	SKP
	JMP NG
	SAE I
	5757 	/DELETED
	JMP GOTNXT
NG,	SKPFIL
	JMP NXTLUP
/GOT A FILE NAME
GOTNXT,	STC FILNAM
	LDA I FILPTR
	STC FILNAM+1
	LDA I FILPTR
	STC FILNAM+2
	ADD FILPTR
	STC TPTR
	ADD BETA1
	STC TCTR
	JMP EX1 	/NORMAL EXIT
/FINISHED CURRENT 
/DIRECTORY, GET NEXT
/UNIT.
RESET,	JMP NXU
	ADD IUPTR
	SAE I
	INLST
	SKP
	JMP GOUSER 	/END OF ULST
	SETFIL 	/NEW DIR IN
	SET I BETA1
	-126
	JMP NXTLUP
/
/
MGET,	SET 14
	0
	LDA I FILPTR
	STC FILNAM+2
	JMP BLDWRD
	ADD CURU
	JMP SETU
	JMP XFER
	JMP 14
	 
	 
TABGT,	JMP FIXT
	JMP TABNM
	XSK I RETURN
MGETF,	JMP INSET
	JMP MIXSCN
	 JMP GOUSER	/NO FIND
	JMP MGET 	/FIND, BRING IN
	JMP EX1 	/NORMAL EXIT
	 
	 
FIXT,	SET 15
	0
	FETCH
	ROL 2
	ADA I
	TABTAB
	STC BETA1
	LDA BETA1
	STC .+1
	LDF 	/DF OF TABLE
	LDA I BETA1
	STC FILPTR
	LDA I BETA1
	STC TABEND
	LDA I BETA1
	STA
	TABLOC
	ADD FILPTR
	STC FILPTR
	JMP 15
/
TABNM,	SET 15
	0
	ADD TABLOC
	SAE
	TABEND
	SKP
	JMP GOUSER 	/END OF TABLE
	LDA FILPTR
	AZE I
	JMP NOTNAM
	STC FILNAM
	LDA I FILPTR
	STC FILNAM+1
	JMP INCLOC
	LDF 3
	JMP 15
NOTNAM,	LDA I FILPTR
	JMP INCLOC
	JMP TABNM+3
/
INCLOC,	LDA I FILPTR
	LDA I
	2
	ADM
	TABLOC
	STA BETA1 	/UPDATE PTR
	JMP 0
	EJECT
/ROUTINE TO SET UP
/PARAMETERS AND BUFFERS
/FOR INUNIT FUNCTIONS
/
INSET,	LDA
	0
	STC INX
	STC ASSFLG 	/CLR FLAG
	ADD INFLG
	APO I
	JMP INX 	/SET, LEAVE
/INFLG NOT SET
/CHECK OUTFLG
	LDA
	OUTFLG
	APO
	JMP CKSAV-2 	/NOT SET
/OUTFLG SET, SAVE DIR
	IOB I 12
	6067
	ADD ONE
	STC MTEM
	JMP CKSAV
/
	CLR
	STC MTEM
/CHECK FOR SAVED INPUT DIR
CKSAV,	ADD SAVDIR
	APO I
	JMP FSTIN
/SAVED INPUT DIR, GET IT
	SET BETA1
	IUPTR
	LDH BETA1
	STC CURU
	IOB 12
	6066
	SKP
/
/GET FIRST INPUT DIR
FSTIN,	JMP NXU
/
	ADD MTEM
	STC SAVDIR
	STC INFLG 	/SET FLAG
	COM
	STC OUTFLG 	/CLR FLAG
INX,	JMP
	EJECT
/ROUTINE TO TRANSFER
/FILE FROM CORE TO 
/DISK-TAPE OR VICE
/VERSA.
/SET UP FROM WORD1 AND WORD2
/
XFER,	SET BETA4
	0
	ADD TUMB1
	STC TU1
	ADD TUMB2
	STC TU2
	ADD CNT1 	/CNTR, WORD1
	AZE I
	JMP WRD2
	STC BETA3
TU1,	0 	/UMB, WORD1
	ADD TAPWRD 	/QN-BN, WORD1
	JMP RBLK
	ADA I
	1001
	STC TAPWRD
	XSK I BETA3
	JMP TU1+1
WRD2,	SRO I
	5252
	JMP BETA4
	ADD CNT2 	/CNTR, WORD2
	STC BETA3
	ADD TAPWR2 	/QN-BN, WORD2
	STC TAPWRD
TU2,	0 	/UMB, WORD2
	JMP TU1+1
/
/ROUTINE TO SET AXO
/TAPE UNIT. ENTER WITH
/UNIT NO. IN AC
/
SETU,	SCR 1
	STC XT 	/FOR XOB
	ADD CURU
	BCL I
	7776
	ROL 3
	BSE I
	RDC
	STC XU 	/TAPE COMMAND
	JMP 0
/
/ROUTINE TO READ FILES
/HANDLES MULTIPLE TAPE
/OR DISK UNITS.
/ENTER WITH QN-BN IN AC
/
RBLK,	STC RB
	ADD 0
	STC RBX
	ADD CURU
	ADA I
	-7
	APO I
	JMP RDSK
	LDA I
XT,	0
	AXO
XU,	RDC
RB,	0
	SETAXO
	ADD RB
RBX,	JMP
/DISK
RDSK,	ADD M1
	APO
	CLR
	STC .+2
/SET DISK PARTITION
	IOB 13
	0
/OPERATE DISK
	ADD RB
	STC .+2
	IOB 12
	0
	IOB 13
	0
	JMP RBX-1
	EJECT
/ROUTINE TO SCAN
/CURRENT INDEX DIRECTORY
/IF SCAN OF CURRENT
/INDEX IS FRUITLESS,
/THEN NEXT INDEX FROM
/INUNIT OR OUTUNIT LIST
/IS READ IN AND SCANNED
/
MIXSCN,	SET 15
	0
	ADD ITCNT
	COM
	STC BETA3
	SETFIL
	SET I BETA1
	-125
IDXLUP,	SET I BETA2
	FILNAM-1
	LDA I FILPTR
	SAE I BETA2
	JMP NOTIDX
	LDA I FILPTR
	SAE I BETA2
	JMP NOTIDX+1
	XSK I 15 	/GOT IT
	JMP 15
/
NOTIDX,	LDA I FILPTR
	LDA I FILPTR
	XSK I BETA1
	JMP IDXLUP
/GET NEXT INDEX
	JMP NXU
	XSK I BETA3
	JMP MIXSCN+5
	JMP 15 	/NO FIND
/
/
NXU,	SET 14
	0
	SET BETA4
	IUPTR
	LDH I BETA4
	SHD I
	7700 	/LIST TERMINATOR
	JMP NXX
	STC CURU
	ADD CURU
	JMP SETU
	LDA I
	6000
	JMP RBLK
	LDF 3
	LDA
	BETA4
	STC IUPTR
	JMP 14
NXX,	LDA I
	4\INLST-1
	STC IUPTR
AA36,	JMP NXU+2
/
/MOD36
/FEB 74



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