File APNPTRV2

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

*20
/APNPTRV2
/10 DEC 69
/EDITOR V2 POINTERS TBLK 320
/INITIAL VALUES EXIT VALUES
/AND ADDRESSES
	LODSYM
	SEGMNT 1
	*PTADDR
	PMODE
	MOVEIT		/BECOMES 4002
	LMODE		/AFT VIRGIN RUN
			/BETA 2 IS PTR
			/TO WB
	4003		/PTR TO 1ST CHAR
			/OF CUR LN
	4004		/PTR TO CB
	4005		/PTR TO CONTROL
			/TABLE (D6)
	4006		/CHAR CTR CURLN
	4000+BBTBLK
	4000+WBTBLK
	4000+CURBLK
	4000+SPTBLK
	4000+NOTOK+2
	4000+X2+5
	4000+CURLN
	4000+MAXLN
	4000+TPFLG
	4000+PLACTR
	4000+MAXBLK
	4000+CBTBLK
	4000+TBLKCB
	4000+20
	0
	*PTINIT
	HBIT+WB-1
	HBIT+WB+1
	0
	D6+2000
	-MAXNUM
	5\WA-1
	5\WA-1
	6\WA-1
	5\WA-1
	STC TPFLG
	0
	1
	1
	7777
	0
	0
	0
	0
	JMP RESTRT
	0
	*PTEXIT
	PMODE
	JMP!VIRGST!200
	LMODE
	HBIT+WB+1
	0
	D6+2000
	-MAXNUM
	5\WA-1
	5\WA-1
	6\WA-1
	5\WA-1
	STC TPFLG
	0
	1
	1
	7777
	0
	0
	0
	0
	JMP RESTRT
	0
	*PT12B		/ADDR OF KNOB SR
	6000+SAM3	/THE KNOB SUB RT
			/ARE CHANGED
			/FOR A 12B
	6000+SAM3+1
	6000+SAM3+2
	6000+SAM3+3
	6000+SAM3+4
	6000+SAM3+5
	6000+SAM3+6
	6000+SAM3+7
	6000+SAM3+10
	6000+SAM3+11
	6000+SAM3+12
	6000+SAM3+13
	6000+SAM3+14
	0
	*B12VAL		/KNOB SR FOR 12A
	LSW		/ARE REPLACED BY
	BCL I		/THE FF
	4000		/SWITCH SR
	COM		/FOR A 12 B
	STC CURVAL	/LSW 1-11
	JMP 0		/CONTROLS CURSOR
	RSW		/RSW 8-11
	BCL I		/CONTROLS LNS
	7760		/PER FRAME
	AZE
	JMP 0
	ADD POS1
	JMP 0
			/ADD PROGRAM V2
			/TBLK 321
	SEGMNT 2
	*1400
	LDA I		/DISABLE BB WRC
	1		/SUB RT BY
	STC PLAFLG	/SETTING THIS WD
	JMP BUWB	/DELETE AP COM
	JMP K1		/FROM WB
	JMP L8		/AP BY NAME
			/OR TBLK NUM ?
	JMP E8		/BLK NUM
C8,	LDA I 10	/BY NAME
	BSE I
	MBLK2
	STC TPWD
	LDA I 10	/BINARY OR
			/PROG NAME
	APO		/MATCH ?
	JMP SAYNO	/BINARY ONLY
	LDA		/AP BY LN NUMS
	2000+E6
	SAE
	2000+E6+1
	SKP
	JMP NOLN
	LDA
	2000+E6
	STC LN1
	LDA
	2000+E6+1
	ADD AONE
	STC LN2
	JMP CHKORG
E8,	LDA		/AP BY BLK NUM 
	E6+2000		/BLK NUM TO AC
	BSE I
	MBLK2
	STC TPWD
NOLN,	LDA I
	1
	STA
	LN1
	COM
	STC LN2
CHKORG,	JMP MAGTP-3	/GET 1ST TBLK
	LDA I 10	/DO NOT PUT
	SAE I		/*20 CR IN
	5262		/WITH AP
	JMP K88		/RESTORE 10
	LDA I 10
	SAE I
	6000+CR
	JMP K88
	LDA I
	1
	SAE
	LN1
	JMP BYPASS
F8,	LDH I 10	/TRANSFER 1 CHAR
	SHD I
	EOF1		/ARE WE DUN ?
	JMP J8		/YES
	STH I 2		/NO GIVE 1 CHAR
			/TO EDITOR
	SAE I		/WAS IT A CR ?
	CR
	JMP H8		/NO CHK BUFFERS
G8,	JMP EOLFIX	/YES UPDATE
	COM		/BETA 3, CURLN
	ADD MAXLN	/AND MAXLN
	STC MAXLN
	ADD AONE
	ADM
	LN1
	SAE
	LN2
	SKP
	JMP J8
H8,	JMP A8F		/CHK AP INPUT
			/BUFFER
	JMP CHKBUF	/CHK EDITOR
			/INPUT BUFFERS
	LDA		/HAVE WE JUST
	3		/PROCESSED A
	SAE		/CR ?
	2
	JMP F8		/NO GET ANOTHER
			/CHAR
	LDA		/YES CHK FOR
	MAXLN		/WA TOO FULL
	AZE I		/TOO MANY LNS ?
	JMP .+6		/YES END OF AP
	LDA		/TOO MANY BLKS ?
	CURBLK
	SAE I
	6\WAEND
	JMP F8		/NO GET  1 CHAR
	LDA I		/WA IS FULL
	-1		/DELETE LAST LN
			/AND RTN
			/TO EDITOR
	JMP EOLFIX+2
	ADD MAXLN
	STC MAXLN
	JMP K1
J8,	JMP NOTOK	/COME HERE
			/WHEN DONE
	JMP A3
	JMP L3
	JMP K8
A8F,	LDA		/IS AP INPUT 
	10		/BUFFER EMPTY ?
	SAE I
	5377
	JMP 0		/NO
	SET 1
	0
	JMP DTEXTR-1	/GET EXTENDED
			/TAPE UNITS
MAGTP,	RDC
TPWD,	MBLK2+INDEX	/INITIALLY HOLDS
			/INDEX TPWORD
			/HOLDS TBLKS
			/DURING AP
	SET I 10
	4777		/INITIAL ADDR
			/OF AP INPUT
			/BUFFER
	ADD P1		/BUMP TBLK
	ADD TPWD
	STC TPWD
	AXO
	JMP 1
B8,	SET 1		/SEARCH INDEX
	0		/FOR NAME MATCH
			/1 TBLK ONLY
	SET I 12	/LENGTH OF NAME
	-4
	SET I 13	/NAME SECTOR OF
	E6+1+2000	/MC TABLE
	LDA
	10		/PTR TO INDEX
	BSE I
	7		/NEXT NAME
	SAE I
	5377		/DUN A BLK ?
	JMP .+3		/NO
	XSK I 1		/YES RTN
	JMP 1		/TO P+2
	STC 10
	LDA I 10	/ALL 4 WORDS
	SAE I 13	/MUST MATCH
	JMP B8+2	/OR WE TRY NEXT
			/NAME
	XSK I 12	/4 MATCHES ?
	JMP .-4		/NO DO SOME MORE
	JMP 1		/YES NAME MATCH
L8,	SET 17
	0
	JMP SETS	/GET UNIT NUM
	STC DTEXTR	/SAVE EXTENDED
			/UNITS
	ROL I 4		/UNIT BIT TO AC
	ADD MAGTP
	STC MAGTP
	LDH		/CHK FOR AP
	E6+2+2000	/BY NAME
	SHD I
	7700
	JMP 17		/ITS BY TBLK NUM
	XSK I 17	/ITS BY NAME
	JMP MAGTP-3	/GET INDEX
	LDA I 10	/IS IT AN INDEX
	SAE I
	5757
	JMP SAYNO	/NO INDEX
	JMP B8		/SEARCH 1ST
			/TBLK OF INDEX
	JMP 17		/FOUND A MATCH
	JMP MAGTP-3	/GET 2ND TBLK
			/OF INDEX
	JMP B8		/SEARCH AGAIN
	JMP 17		/FOUND A MATCH
SAYNO,	CLR		/COME FOR NO
	SET I 1		/PROG, NO INDEX
	340		/OR NO MATCH
	SET I 12
	A6+34+2000	/GRID ADDR
	DSC 12
	DSC I 12
	SET I 1
	352
	DSC I 12
	DSC I 12
	KST		/LOOP UNTIL KBD
	JMP SAYNO
K8,	CLR	
	AXO
	STC PLAFLG
	RDC I DIALU
	2\DIALST+2
	LIF 3
	JMP APRTN
SETS,	CLR		/GET UNIT
	LDA		/NUM
	E6+6+2000
	ROR I 1
	BCL I
	7774
	JMP 0
K88,	LDA
	10
	ADA I
	-1
	STC 10
	LDA I
DTEXTR,	0
	AXO
	CLR
	JMP 0
BYPASS,	STC LNCTR
	LDH I 10
	SHD I
	EOF1
	JMP J8
	SAE I
	CR
	JMP BYEOL
	LDA I
AONE,	1
	ADM
	LNCTR
	SAE
	LN1
	JMP BYEOL
	JMP A8F
	JMP F8
BYEOL,	JMP A8F
	JMP BYPASS+1
LN1,	0
LN2,	0
LNCTR,	0
	MBLK2=2000



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