File FIXFRED

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

*20
///FIXFRED
	 
/PROGRAM TO RECONSTITUTE RESPIRATORY
/AND EKG FILES FROM PAPER TAPE INPUT.
	 
	SEGMNT 5
	*20
	 
/MESSAGE: MAKE RESP & EKG FILES
BEG,	 LIF 4
	MESOUT
	MBEG
	 
	LIF 4
	OUTUNIT
	 
D1,	LIF 4
	INTRACT
	CJ1
	M1		/NO. OF FILES
	 
D2,	LIF 4
	INTRACT
	CJ2
	M2		/GO:
	 
CJ1,	T2
	J1
CJ2,	T1
	J2
T1,	GO
T2,	0
	 
/NO. OF FILES
J1,	JMP BEG		/CR
	JMP .+1		/0
	COM
	STC 15		/NO. OF FILES CNTR
	JMP D2
	 
/GO:
J2,	JMP BEG		/CR
	JMP MAKFIL	/GO
	JMP D2		/0
	 
/BRING IN HEADER TO GET NAME AND DATA TYPE
	 
MAKFIL,	OPR 11
	13
	275		/=
	7
	2000
	JMP .-5
	OPR 1
	13
	NAMGET
	JMP .-3
	OPR 5
	 
/GET NAME
NAMGET,	SET I 1
	4\3777
	SET I 2
	4\NAMBUF-1
	SET I 3
	-6
	LDF 7
	LDH I 1
	SAE I 
	45
	JMP .-3
/GOT FIRST CR. NOW GET FIRST CHAR THAT IS
/NO CR OR LF. THIS WILL BE NAME
CHAR,	LDH I 1
	SHD I
	1200		/LF
	JMP CHAR
	SHD I
	4500		/CR
	JMP CHAR
/STORE NAME CHARS IN NAMBUF
	SKP
	LDH I 1
	STH I 2
	XSK I 3
	JMP .-3
/GET NAME
	LDA
	NAMBUF
	STC NAM
	INPUT
	NAMBUF+1
	FIX
	FAC
	ISTOR1
	NAM+1
	 
/GET DATA TYPE
/ADJUST BETA1 PTR TO NEXT FULL WORD
	ADD 1
	ADA I
	2
	BCL I
	4000
	STC .+2
	INPUT
	0
	FIX 
	FAC
	ISTOR1
	DTYPE
/CHECK DATA TYPE
	ADD DTYPE
	SAE I
	55		/45(10)=RESP
	SKP
	JMP RESP
	SAE I
	56		/46(10)=EKG
	HLT		/ERROR
	JMP EKG
DTYPE,	0
NAM,	0
	0
NAMBUF,	0
	0
	0
	4500
	 
	 
//EKG DATA
	 
EKG,	SET I 17
	-21		/N
	SET I 10
	P104
/GET FIRST VALUE
	JMP GETVAL	/VALUE & SD
	INPUT 
	2000
	JMP .+3
EKG1,	JMP GETVAL	/NEXT VALUE & SD
	JMP INVAL	/INPUT VALUE
	STORE
	4\10
	JMP INSD	/INPUT SD
	FMUL
	FAC		/VARIANCE
	STORE 
	4\10
	XSK I 17	/DONE?
	JMP EKG1
	LDA I
	21		/N
	JMP STOR	/STORE FILE
	 
	 
//RESP DATA
	 
RESP,	SET I 16
	-11		/VALUES W SD
	SET I 17
	-4		/VALUES WO SD
	SET I 10
	P104
/GET FIRST VALUE
	JMP GETVAL	/NEXT VALUE & SD
	INPUT
	2000
	JMP .+3
RESP1,	JMP GETVAL	/NEXT VALUE & SD
	JMP INVAL	/INPUT VALUE
	STORE
	4\10
	JMP INSD	/INPUT SD
	FMUL
	FAC		/VARIANCE
	STORE
	4\10
	XSK I 16	/DONE ALL SD?
	JMP RESP1
/FINISHED VALUES WITH SD
RESP2,	JMP GETVAL	/NEXT VALUE
	JMP INVAL	/INPUT VALUE
	STORE
	4\10
	FZER
	STORE
	4\10		/ZERO VARIANCE
	XSK I 17	/DONE ALL?
	JMP RESP2
	LDA I
	15		/N
	JMP STOR
	 
/SUBROUTINES
	 
/GET NEXT VALUE (& SD) FROM TTY
GETVAL,	SET 3
	0
	OPR 11
	13
	212
	7
	2000
	JMP .-5
	OPR 1
	13
	GETX
	JMP .-3
	OPR 5
GETX,	JMP 3
	 
/INPUT VALUE FROM CORE BUFFER
/FIRST FIND EQUAL SIGN
INVAL,	SET 3
	0
	SET I 1
	4\3777
	LDH I 1
	SAE I
	75		/=
	JMP .-3
	JMP FIX1
	STC .+2
	INPUT
	0
	JMP 3
	 
/INPUT SD FROM CORE BUFFER
/FIRST FIND PLUS SIGN
INSD,	SET 3
	0
	SET I 1
	4\3777
	LDH I 1
	SAE I
	53		/+
	JMP .-3
	JMP FIX1
	STC .+3
	LDF 7
	INPUT
	0
	JMP 3
	 
FIX1,	LDA 
KP1,	1
	ADD KP1		/ADVANCE PTR
	BCL I
	4000		/CLR IF RT HALF
	JMP 0
	 
//STORE FILE ON TAPE
	 
STOR,	STA
	P17		/N
	LDA
	DTYPE
	STA
	P0		/DATA TYPE
/GET NO. OF COMPLEXES
	JMP GETVAL
	JMP INVAL
	FIX
	FAC
	ISTOR1
	P20
	LDF 4
	LDA
	NAM
	STA
	FILNAM
	LDA
	NAM+1
	STA
	FILNAM+1
	LDA I
	7107
	STA
	WORD1
	LDA I
	4106
	STA
	WORD2		/DUMMY
	 
	LIF 4
	MSTORIT
	 JMP BEG	/FULL
	 
	XSK I 15	/DONE ALL FILES?
	JMP MAKFIL
	 
	LIF 4
	DEASS
	LIF 4
	STOP
	 
	 
//MESSAGES
	 
MBEG,	TEXT %MAKE RESP & EKG FILES %
	4543
M1,	TEXT %NO. OF FILES: %
M2,	TEXT %GO%
	4543
	7200
/PBLOCK FOLLOWS
	 
	NOLIST
	 
//PBLOCK
/PARAMETER BLOCK ASSIGNMENTS
/
	P0=3400		/DATA TYPE
	P17=3417	/NO.SAMP IN SEG
	P20=3420	/NO.SEG IN ENSM
	P104=3610
/
/
/COMMAND DECODER ASSIGNMENTS
/
/
	STOP=JMP 20
	DEASS=JMP 31
	OUTUNIT=JMP 32
	INTRACT=JMP 42
	MESOUT=JMP 43
	MSTORIT=JMP 57
/
/COMMAND LOCATIONS.
/
	FILNAM=2320
	WORD1=2323
	WORD2=2324
	INBUF=2325
/COMMAND NUMBERS.
	GO=23
/
/EXEC3 ASSIGNMENTS
/
	OPR=500
/FLOATING POINT DEFINITIONS.
/
	FAC=0
	FMUL=742
	LOAD=744
	STORE=745
	INPUT=747
	OUTPUT=750
	ISTOR1=751
	SFLOAT=754
	FIX=755
	FZER=762
/
/PBLOCK
/FEB 74.
	 
	LIST
	 
///END FIXFRED
/JUNE 74
/JLB
	 



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