File SUBINTBL

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

*20
///  SUBINTBL
/SUBROUTINE VERSION OF INPUTABL.
/SETS UP A TABLE OF FILE NAMES.
/CALLED IN AS AN OVERLAY TO QN3 DF5.
/DF 5 SETUP CODE IS:
/                 *1375
/                 LDF 6     /TABLE DF
/                 3777      /TABLE PNTR-1
/         CURTAB, 1375      /OR  .-2
/CALLS ARE:
/         JMP 1400     /SET UP TABLE
/         JMP 1404     /MISSING ENTRY CHECK
/         .+1          /RETURN HERE AFTER
/TYPING "GO" OR "NEXT" FOLLOWING MISSING
/ENTRIES TYPEOUT.
/         .+2          /NO MISSING RETURN
/SNS3=1 OMITS MISSING FILE TYPEOUT.
/SNS3 IS SET FOR COMMAND EXECUTIVE.
/IF MISSING, ONE OPENS INPUT BUFFER
/WITH ABILITY TO EXECUTE GLOBAL COMMANDS.
/TYPING "GO" OR "NEXT" ONE RETURNS AT .+1.
/
/THIS WOULD SET UP A TABLE STARTING AT
/QN4 OF DF6.  LOCATION MNPTZ SETS
/SIZE OF TABLE (-NUM ENTRIES).
	CURTAB=1377
/
	SEGMNT 5
	*1400
/
/TABLE ENTRY POINT.
TABLIN,	LDA
	0
	STC TABLNX
	JMP TBX
/
/MISSING ENTRY POINT.
MISIN,	LDA
	0
	STC MISNX
	JMP MISS
/
/ROUTINE TO SET MAX NUM TABLE ENTRIES.
SET6,	SET I 6
MNPTZ,	-1000	/NUM ENTRIES\TABLE
	JMP 0
/
/
/TYPE "INPUT TABLE" & SET TABLE PNTRS.
TBX,	JMP SET6
	IOB 11
	4104
	272
	5
	TMES
	JMP .-5
/
	IOB 1
	4
	PT
	JMP .-3
	IOB 5
/
PT,	LDA
	CURTAB
	STC 4
	LDA 4		/TABLE DF
	STA
	CLUMB
	STC TUMB
	LDA I 4
	STC 4
	SET 5		/TABLE PNTR
	4
/
/CLEAR PROSPECTIVE TABLE AREA.
CLUMB,	LDF
	CLR
	STA I 5
	STA I 5
	XSK I 6		/TABLE DUN?
	JMP .-3
	JMP SET6
/
/TABLE INPUT HANDLER.
MOTAB,	IOB 11
	0113
	215
	4
	INBUF
	JMP .-5
/
	IOB 1
	13
	TABDEC
	JMP .-3
	IOB 5
/
/
TABDEC,	LDA I
	TL1-1
	LIF 4
	STRSCN
	JMP MOTAB
	JMP MOTAB
	JMP MOTAB
	NOP
/
	LDF 4		/EXIT ON INITIAL CR
	LDH
	INBUF
	SHD I
	4500		/CR
	JMP TABLNX
/
	INPUT
	INBUF
	FIX
	FAC
	ISTOR1
	TT1
	LDA
	INBUF
TUMB,	LDF
	STA I 4		/NAM
	LDA I
TT1,	0
	STA I 4		/NUM
/
/NOW SEEK HYPHEN OR DASH MULTIPLE ENTRY CASE.
	LDF 4
	SET I 5
	4\INBUF-1
	LDH I 5
	SHD I
	4500		/CR
	JMP MOTX
	SAE I
	55		/-
	JMP .-6
/
	LDH I 5
	LDA
	5
	STC .+2
	INPUT
	0
/
	FIX
	FAC
	ISTOR1
	TT2
/
TT3,	LDA
	TT1
	SAE I
TT2,	0
	SKP
	JMP MOTX
	ADD KKP1
	STC TT1
/
	LDF 4
	ADD TUMB
	STC TSUMB
	LDA
	INBUF
TSUMB,	LDF
	STA I 4
	LDA
	TT1
	STA I 4
	XSK I 6		/TABLE DUN?
	JMP TT3
	JMP TABLNX
/
MOTX,	XSK I 6		/TABLE DUN?
	JMP MOTAB
/
TABLNX,	JMP
/
TMES,	4543
	1116
	2025
	2440
	2401
	0214
	0545
	4372
	EJECT
/MISSING ENTRIES HANDLER
/
MISS,	LDA
	CURTAB
	STC 4
	JMP SET6
	SET 5
	4
/
	LDA 5
	STA
	MB
	STA
	NB
	STC OB
MB,	LDF
	LDA I 5
	STC 5
/
	LDA I 5
	AZE
	JMP YESM
	LDA I 5		/INC 5
	XSK I 6		/TABLE DUN?
	JMP .-5
	JMP SKPX 	/NO MISSING
/
/MISSING ENTRIES HANDLER FOLLOWS.
YESM,	IOB 11
	4104
	212
	5
	MES3
	JMP .-5
	IOB 1
	4
	.+3
	JMP .-3
	IOB 5
/
/
	REXC 3		/SNS3=1; NO TYPEOUT
	JMP SSV1
/
	SETWRD
	400
/
NB,	LDF
	LDA 5
	STC MOBUF
	LDA I 5
	STC MNUM
	DFLOAT
	MNUM
	OUTPUT
	MOBUF+1
/
	IOB 11
	4104
	212
	5
	MOBUF
	JMP .-5
	IOB 1
	4
	.+3
	JMP .-3
	IOB 5
/
QB,	XSK I 6		/TABLE DUN?
	SKP
	JMP SSV1
/
OB,	LDF
	LDA I 5		/CHK FOR 0
	AZE
	JMP NB		/TYPE NAME
	LDA I 5		/INC 5
	JMP QB
/
MOBUF,	0
	0
	0
	4543
/
TL1,	0
TB11,	GO
	NEXT
	0
/
/
/OPEN INPUT BUFFER ALLOWING GLOBAL COMMANDS.
/RETURN .+1 AFTER MISSING TYPEOUT & AFTER
/TYPING "GO" OR "NEXT".
SSV1,	IOB 11
	7704
	272
	0
	272
	JMP .-5
	IOB 11
	0113
	215
	4
	INBUF
	JMP .-5
/
	IOB 1
	13
	DECO
	JMP .-3
	IOB 5
/
DECO,	LDA I
	TB11-1
	LIF 4
	STRSCN
	JMP SSV1
	JMP LKUP
	JMP SSV1
	JMP SSV1
	JMP SSV1
/
LKUP,	SAE I
	NEXT
	SKP
	JMP NSKPX
	SAE I
	GO
	JMP SSV1
/
SKPX,	LDA	   /RTRN .+2, NO MISSING
	MISNX
	ADA I
KKP1,	1
	STC MISNX
NSKPX,	
MISNX,	JMP
/
/
MES3,	1511
	2323
	1116
	0745
	4300
/
MNUM,	0
	0
	0
/
/SUBINTBL
/JUNE 73



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