File PCODEC.F2

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




/*************** PITCH CODEC (C.D.N.) *******************


/CALL:	PITCOD
/	PITCH PULSES IN
/	BITS OUT


/CALL:	PITDCD
/	BITS IN
/	PULSES OUT



PITCOD,	2

	BLOTNT
	F1INT

	ACUM
	1
	CIF CDF 20
	DCA I CDINP
	JMP I .+1
	CDDO

CDINP,	PULSIN


CDEND,	TAD I CDOUTP
	CDF 10
	PUT
	2
	INEND

CDOUTP,	BITOUT


F1INT,	CIF 20
	JMP I .+1
	PCDINT



PITDCD,	2

	BLOTNT
	F1INT2

	ACUM
	1
	CDF CIF 20
	DCA I BITINP
	JMP I .+1
	DCDO

BITINP,	BITIN

DCEND,	TAD I DCOUTP
	CDF 10
	PUT
	2

	INEND

DCOUTP,	DCOUT


F1INT2,	CIF 20
	JMP I .+1
	PDCINT



FIELD 2

*4000

CDDO,	JMS CLOCK
	JMS TIMER
	JMS PLSCHK
	JMS SERDO
	CIF 10
	JMP I .+1
	CDEND


CLOCK,	0
	CLA
	ISZ SUBCNT
	JMP NULNUL

	TAD SPEED1
	CIA
	DCA SUBCNT

	CLA IAC
	DCA FSTCLK

	ISZ MNCNT
	JMP ONENUL

	TAD SPEED2
	CIA
	DCA MNCNT
	IAC
	JMP ONEONE

NULNUL,	DCA FSTCLK
ONEONE,
ONENUL,	DCA SLWCLK

	JMP I CLOCK

FSTCLK,	0
SLWCLK,	0
SPEED1,	1
SPEED2,	10
SUBCNT,	0
MNCNT,	0


PLSCHK,	0
	CLA
	TAD SLWCLK
	SZA CLA
	DCA PULSE	/CLEAR FF
	TAD PULSIN
	SPA SNA CLA
	JMP I PLSCHK
	CLA IAC
	DCA PULSE	/SET FLIPFLOP
	JMP I PLSCHK


PULSE,	0



TIMER,	0
	CLA
	TAD FSTCLK
	SNA  CLA
	JMP NULOUT

	TAD PULSE
	SZA CLA
	ISZ TIMERC
	NOP

	TAD SLWCLK
	SNA CLA
	JMP NULOUT
	TAD TIMERC
	DCA PAROUT
	DCA TIMERC
	JMP I TIMER
NULOUT,	DCA PAROUT
	JMP I TIMER

TIMERC,	0
PAROUT,	0


SERDO,	0
	CLA
	TAD OUTFLG
	SZA CLA
	JMP FLGUPS

	TAD PAROUT
	SNA CLA
	JMP BITNUL

	TAD NBITS
	CIA
	DCA OUTFLG

	CLA CLL CMA
	TAD PAROUT
	RAL
	DCA SEROUT

FLGUPS,	TAD SLWCLK
	SNA CLA
	JMP BITNUL

	ISZ OUTFLG
	NOP
	TAD SEROUT
	RAR
	DCA SEROUT
	SZL
	CLA IAC
BITNUL,	DCA BITOUT
	JMP I SERDO

OUTFLG,	0
NBITS,	4
SEROUT,	0


PCDINT,	CLA CMA
	DCA SUBCNT
	CLA CMA
	DCA MNCNT
	DCA PULSE
	DCA TIMERC
	DCA OUTFLG

	CIF 10
	JMP I .+1
	CDEND


PULSIN,	0
BITOUT,	0


PAGE


DCDO,	JMS PARDO
	JMS PLSGEN
	CIF 10
	JMP I .+1
	DCEND


PARDO,	0
	CLA CLL
	TAD SLWCLK
	SNA SPA CLA
	JMP INOVER

	TAD INFLG
	SZA CLA
	JMP FLGUPR

	TAD MN14
	TAD NBITS
	DCA INTEM
	TAD SERIN
INLOOP,	CLL
	RAR
	ISZ INTEM
	JMP INLOOP
	DCA INOUT
	DCA SERIN
	TAD BITIN
	SNA CLA
	JMP I PARDO

	TAD NBITS
	CIA
	DCA INFLG

FLGUPR,	ISZ INFLG
	NOP
	CLA CLL
	TAD BITIN
	RAR
	TAD SERIN
	RAR
	DCA SERIN
	JMP I PARDO

INOVER,	DCA INOUT
	JMP I PARDO

INFLG,	0
SERIN,	0
MN14,	-14
INTEM,	0
INOUT,	0



PLSGEN,	0
	CLA CLL
	TAD INOUT
	SNA
	JMP PLSOVR
	RAR
	CIA
	TAD SPEED2
	CIA
	DCA PLSCNT
PLSOVR,	TAD FSTCLK
	SNA SPA CLA
	JMP NOPULS
	ISZ PLSCNT
	JMP NOPULS
	DCA PLSCNT

	TAD N200
	SKP
NOPULS,	CLA CMA
	DCA DCOUT
	JMP I PLSGEN

PLSCNT,	0
N200,	200



PDCINT,	CLA
	DCA SERIN
	DCA INFLG
	DCA PLSCNT

	CIF 10
	JMP I .+1
	DCEND


BITIN,	0
DCOUT,	0



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