File RECALL1

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

*20
	PMODE
	*20
SH1,	0
SH2,	0
SH3,	0
SHUFEL,	SHUFL
RNX,	RN
IRX,	IR
K7,	7
TEMP,	0
R1,	0
R2,	0
R3,	0
INDEX6,	0
RNDM3,	0
RNDM2,	0
RNDM1,	RNDM
RMNDR,	RMNDRX
WDSPOT,	0
AORDER,	ORDER-1		/AD-1 KEYWDS
WDTIME,	-310		/-TIME/WD HSEC
KEYWD,	0
MASKS,	0
M24,	-24
BLANK,	52		/MASK PW
CHAR,	0
MODE,	0
ITASK,	ADTASK
ROWS,	0
WORDS,	0
LETTER,	0
Y0,	360
DY,	-240
X0,	774
DX,	74
M4,	-4
M5,	-5
M6,	-6
Y,	0
POINTR,	0
SINGLE,	SINGLY
NUMBR,	IOBUFR
SHINE,	SHONUM
C700,	700
M340,	-340
C11,	11
YC,	0
XC,	0
DISNUM,	0
SUM,	0
C540,	540
C60,	60
D1000,	1750
MD1000,	-1750
D100,	144
MD100,	-144
D10,	12
MD10,	-12
NUM,	0
DIGIT,	0
LEAD,	0
PAUSET,	-1750		/-ADTASK RESP TM
RESPTM,	-764
RESINT,	-22		/RESP TM IN 5"
ILTASK,	LTASK
DNTM,	-226		/-HSEC/DIGIT
NSHOW,	-20		/-NO DIGITS
DECPUT,	DECOUT
C40,	40
C260,	260
C72,	72
C400,	400
C200,	200
IMASK,	MASK
C3777,	3777
HCLOCK,	5100
D300,	454
COUNT,	0
NLIST,	-17
TIPE,	TYPE
PWTABL,	PATRN-2
C212,	212
C215,	215
C240,	240
C300,	300
M10,	-10
C170,	170
TYPE,	0
	TLS
	TSF
	JMP .-1
	CLA
	JMP I TYPE
START,	CLA
	LINC
	LMODE
	LDF 2
	RDC U
	4760
	RDC U
	5761
	RDC U
	6762
	RDC U
	7763
	LDF 3
	RDC U
	4764
	RDC U
	5765
	RDC U
	6766
	RDC U
	7767
	PDP
	PMODE
	ISZ COUNT
	NOP
	LAS
	SZA CLA
	JMP .-4
	JMS I IRX
	JMS I RNX
	ISZ COUNT
	JMP .-2
BEGIN,	CLA
	TAD M6
	DCA SH3
	TAD D300
	DCA SH2
	TAD C3777
	DCA SH1
	JMS I SHUFEL
	CLA
	TAD C3777
	DCA POINTR
TRIAL,	TAD POINTR
	DCA 10
	TAD C215
	JMS I TIPE
	TAD M6
	DCA 3
	TAD C212
	JMS I TIPE
	ISZ 3
	JMP .-3
	TAD M4
	DCA ROWS
PROW,	TAD M5
	DCA WORDS
	TAD C215
	JMS I TIPE
	TAD C212
	JMS I TIPE
	TAD C212
	JMS I TIPE
PWORD,	TAD M5
	DCA 1
	TAD C240
	JMS I TIPE
	ISZ 1
	JMP .-3
	TAD M6
	DCA LETTER
	TAD I 10
	TAD C300
	JMS I TIPE
	ISZ LETTER
	JMP .-4
	ISZ WORDS
	JMP PWORD
	ISZ ROWS
	JMP PROW
	TAD M10
	DCA 1
	TAD C215
	JMS I TIPE
	TAD C212
	JMS I TIPE
	ISZ 1
	JMP .-3
/WAIT FOR (ANY) BUTTON PRESS FROM S TO
/BEGIN NEXT TRIAL
	6314
	6312
	SNA 
	JMP .-2
/GET MODE FROM SW 1: UP=MODE=1 FOR WORDS
/SINGLY, WITH OTHER POSITIONS MASKED;
/DOWN=MODE=0 FOR ENTIRE ARRAY TOGETHER
	CLA IAC
	LINC
	LMODE
	SNS 1
	CLR
	STC MODE
	ESF		/HALF-SIZE WORDS
	PDP
	PMODE
	TAD MODE
	SZA CLA
	JMP I SINGLE	/JMP SINGLY
/THIS SECTION (MODE=0) DISPLAYS THE
/ENTIRE 20 WORD ARRAY TOGETHER
	TAD M24
	DCA KEYWD	/20 "TICKS"
WHOLE,	CLLR
	TAD HCLOCK
	CLLR		/START HSEC CLOK
	CLA
DISP,	TAD POINTR
	DCA 10
	TAD M4
	DCA ROWS
	TAD Y0
ROW,	DCA Y
	TAD M5
	DCA WORDS
	TAD X0
WORD,	DCA 1
	TAD M6
	DCA LETTER
LETTR,	TAD I 10
	CLL RAL
	TAD PWTABL
	DCA 2
	TAD Y
	LINC
	LMODE
	DSC 2
	DSC I 2
	PDP
	PMODE
	CLA
	ISZ 1
	ISZ LETTER
	JMP LETTR
	ISZ WORDS
	SKP
	JMP ENDROW
	TAD DX
	TAD 1
	JMP WORD
ENDROW,	ISZ ROWS
	SKP
	JMP ENDISP
	TAD Y
	TAD DY
	JMP ROW
ENDISP,	CLCA
	TAD WDTIME	/"TICK" UP YET?
	SPA CLA
	JMP DISP
	ISZ KEYWD	/MORE "TICKS"?
	JMP WHOLE
	JMP  I ITASK	/INT. TASK
/THIS SECTION (MODE=1) DISPLAYS EACH
/OF THE 20 WORDS SINGLY (WHILE OTHER
/WORDS MASKED OUT) FOR -WDTIME HSECS/WD
SINGLY,	TAD AORDER	/ORDER ARRAY-1
	DCA 11
	TAD M24
	DCA COUNT
FRAME,	TAD I 11
	DCA KEYWD	/POSN NEXT WD
	TAD KEYWD
	CLL RTL
	TAD KEYWD
	TAD KEYWD	/TEXT AT POINTR
	TAD M6		/+6(KEYWD-1)
	TAD POINTR
	DCA WDSPOT
	CLLR
	TAD HCLOCK
	CLLR
	CLA
SHOW,	TAD M4
	DCA ROWS
	TAD KEYWD
	CIA
	DCA MASKS	/NO MASKS BEFORE
	TAD Y0
SROW,	DCA Y
	TAD M5
	DCA WORDS
	TAD X0
SCOL,	DCA 1
	TAD M6
	DCA LETTER
	ISZ MASKS	/MASK OR WORD?
	SKP
	JMP .+3		/SHOW WORD
	JMS MASK
	JMP RCHECK
	TAD WDSPOT	/SHOW WORD
	DCA 10
SLETTR,	TAD I 10
	CLL RAL
	TAD PWTABL
	DCA 2
	TAD Y
	LINC
	LMODE
	DSC 2
	DSC I 2
	CLR
	PDP
	PMODE
	ISZ 1
	ISZ LETTER
	JMP SLETTR
RCHECK,	ISZ WORDS
	SKP
	JMP DCHECK
	TAD DX
	TAD 1
	JMP SCOL
DCHECK,	ISZ ROWS
	SKP
	JMP CHEND
	TAD Y
	TAD DY
	JMP SROW
CHEND,	CLCA
	TAD WDTIME
	SPA CLA
	JMP SHOW
	ISZ COUNT	/ANOTHER WORD?
	JMP I IFRAME	/JMP FRAME
	JMP I ITASK
IFRAME,	FRAME
/SECTION DISPLAYS 6-LETTER WORD MASKED
/WITH 6 "BLANK" CHARS
MASK,	0
	TAD BLANK
	CLL RAL
	TAD PWTABL
	DCA CHAR
	TAD CHAR
	DCA 2
	TAD Y
	LINC
	LMODE
	DSC 2
	DSC I 2
	CLR
	PDP
	PMODE
	ISZ 1
	ISZ LETTER
	JMP MASK+5
	JMP I MASK
	JMP RCHECK
/THIS SECTION CONTROLS THE INTERVENING
/TASK, WHICH PRESENTS RANDOM DIGITS
/(1-9) AT RANDOM PARTS OF THE DISPLAY.
/THE SUBJECTS TASK IS TO ADD THEM TO
/FORM A FINAL SUM.  NSHOW DIGITS ARE
/DISPLAYED, EACH FOR -DNTM HSECS. 
ADTASK,	CLA
	DCA SUM
	TAD NSHOW
	DCA COUNT
	TAD C200
	LINC
	LMODE
	ESF		/FULL-SIZE NOS
	PDP
	PMODE
	CLA
LTASK,	TAD C11
	DCA RNDM3
	JMS I RNDM1
	TAD RNDM2
	IAC
	DCA DISNUM	/RANDOM DIGIT
	TAD C540
	DCA RNDM3
	JMS I RNDM1
	TAD RNDM2
	TAD C60
	DCA XC		/RAND X-COOR.
	TAD C700
	DCA RNDM3
	JMS I RNDM1
	TAD M340
	TAD RNDM2
	DCA YC		/RAND Y-COOR.
	TAD DISNUM
	JMS I NUMBR	/JMS IOBUFR
	CLLR
	TAD HCLOCK
	CLLR
	JMS I SHINE	/JMS SHONUM
	CLCA
	TAD DNTM
	SPA CLA
	JMP .-4
	TAD SUM
	TAD DISNUM
	DCA SUM
	ISZ COUNT
	JMP I ILTASK	/JMP LTASK
/DONE WITH INTERVENING TASK. SHOW ARRAY
/OF MASKS FOR DURATION OF RESPONSE 
/PERIOD, WHICH IS -RESINT*5 SECS LONG
	LINC
	LMODE
	ESF		/HALF-SIZE
	PDP
	PMODE
	TAD RESINT
	DCA COUNT	/-NO 5 SEC TICKS
WDISP,	CLLR
	TAD HCLOCK
	CLLR
	CLA
	TAD M4
	DCA ROWS
	TAD Y0
WROW,	DCA Y
	TAD M5
	DCA WORDS
	TAD X0
WCOL,	DCA 1
	TAD M6
	DCA LETTER
	JMS I IMASK	/JMS MASK
	ISZ WORDS
	SKP
	JMP WCHECK
	TAD DX
	TAD 1
	JMP WCOL
WCHECK,	ISZ ROWS
	SKP
	JMP WEND
	TAD Y
	TAD DY
	JMP WROW
WEND,	CLCA
	TAD RESPTM	/TICK UP?
	SPA CLA
	JMP WDISP+4
	ISZ COUNT	/ANOTHER TICK?
	JMP WDISP
	CLLR		/STOP CLOCK
	TAD C215
	JMS I TIPE
	TAD C212
	JMS I TIPE
	TAD C212
	JMS I TIPE
	TAD C212
	JMS I TIPE	/3 LINES
	TAD MODE
	TAD C260
	JMS I TIPE	/MODE=0/1
	TAD C240
	JMS I TIPE	/" "
	TAD WDTIME
	CIA
	JMS I DECPUT	/TIME/WD HSECS
	TAD C240
	JMS I TIPE
	TAD DNTM
	CIA
	JMS I DECPUT	/TIME/DIG HSECS
	TAD C240
	JMS I TIPE
	TAD NSHOW
	CIA
	JMS I DECPUT	/NO DIGITS
	TAD C240
	JMS I TIPE
	TAD SUM
	JMS I DECPUT	/CORRECT SUM
	TAD C240
	JMS I TIPE
	TAD RESINT
	CIA
	DCA 1
	TAD 1
	CLL RTL
	TAD 1
	JMS I DECPUT	/RESP INT SECS
	TAD POINTR
	TAD C170
	DCA POINTR	/NEXT WORD SET
	JMP I ITRIAL
ITRIAL,	TRIAL
/SUBR FILLS IOBUF,...,IOBUF+3 WITH
/6-BIT ASCII CODES FOR UNSIGNED DECIMAL
/INTEGER EQUIVALENT OF AC. LEADING
/ZEROES BLANKED. USED BY BOTH SHONUM
/AND DECOUT ROUTINES
	PAGE
IOSPOT,	IOBUF-1
IOBUF,	0
	0
	0
	0
IOBUFR,	0		/SUBR BEGINS
	DCA NUM
	DCA DIGIT
	TAD IOSPOT
	DCA 12		/AD-1 IOBUF
	TAD NUM
	TAD MD1000
	SPA
	JMP .+3
	ISZ DIGIT
	JMP .-4
	TAD D1000
	DCA NUM
	TAD DIGIT
	DCA LEAD
	TAD LEAD
	SZA CLA
	JMP .+3
	TAD C40
	JMP .+3
	TAD C60
	TAD DIGIT
	DCA I 12
	DCA DIGIT
	TAD NUM
	TAD MD100
	SPA
	JMP .+3
	ISZ DIGIT
	JMP .-4
	TAD D100
	DCA NUM
	TAD DIGIT
	TAD LEAD
	DCA LEAD
	TAD LEAD
	SZA CLA
	JMP .+3
	TAD C40
	JMP .+3
	TAD C60
	TAD DIGIT
	DCA I 12
	DCA DIGIT
	TAD NUM
	TAD MD10
	SPA
	JMP .+3
	ISZ DIGIT
	JMP .-4
	TAD C72		/C60+D10
	DCA NUM
	TAD DIGIT
	TAD LEAD
	SZA CLA
	JMP .+3
	TAD C40
	JMP .+3
	TAD DIGIT
	TAD C60
	DCA I 12
	TAD NUM
	DCA I 12
	JMP I IOBUFR
/SUBR DISPLAYS 4-CHAR DECIMAL INTEGER
/IN THE IOBUF ARRAY ON THE SCOPE AT
/(XC,YC)
SHONUM,	0
	CLA
	TAD IOSPOT
	DCA 12
	TAD M4
	DCA 3
	TAD XC
	DCA 1
	TAD I 12
	CLL RAL
	TAD PWTABL
	DCA 2
	TAD YC
	LINC
	LMODE
	DSC 2
	DSC I 2
	PDP
	PMODE
	CLA
	ISZ 3
	JMP SHONUM+10
	JMP I SHONUM
/SUBR TYPES OUT UNSIGNED 4-DIGIT DECIMAL
/INTEGER FROM AC
DECOUT,	0
	JMS IOBUFR
	TAD M4
	DCA 3
	TAD IOSPOT
	DCA 12
	TAD C200
	TAD I 12
	JMS I TIPE
	ISZ 3
	JMP .-4
	JMP I DECOUT
ORDER,	1		/KEYWD ORDER
	2
	3
	4
	5
	6
	7
	10
	11
	12
	13
	14
	15
	16
	17
	20
	21
	22
	23
	24
	PAGE
RNDM,	0		/RN IN 0,RNDM3
	JMS I RNX	/36 BIT RN
	JMS I RMNDR	/REMAINDR RNDM3
	CLA
	JMP I RNDM	/DONE
M36,	-44		/
IDX1,	0		/
R1X,	0		/
R2X,	0		/
R3X,	0		/
RMNDRX,	0		/GET RMNDR
	CLA		/
	DCA RNDM2	/
	TAD R1		/
	DCA R1X		/
	TAD R2		/
	DCA R2X		/
	TAD R3		/
	DCA R3X		/
	TAD M36		/
	DCA IDX1	/FOR 36 BITS
RMN1,	CLA		/
	TAD RNDM2	/
	CLL		/
	RAL		/
	DCA RNDM2	/SHIFT LEFT 1
	TAD R1X		/
	CLL		/
	RAL		/
	DCA R1X		/SHIFT LEFT 1
	RAL		/GET LINK
	TAD RNDM2	/
	DCA RNDM2	/
	TAD R2X		/
	CLL		/
	RAL		/
	DCA R2X		/
	RAL		/GET LINK
	TAD R1X		/
	DCA R1X		/
	TAD R3X		/
	CLL		/
	RAL		/
	DCA R3X		/
	RAL		/GET LINK
	TAD R2X		/
	DCA R2X		/SHIFTS DONE
	TAD RNDM3	/NUMBER MOD
	CIA		/
	TAD RNDM2	/
	SPA		/
	JMP .+2		/
	DCA RNDM2	/SUB,REPLACE
	ISZ IDX1	/CHECK INDEX
	JMP RMN1	/CONTINUE
	JMP I RMNDRX	/RMNDR IN RNDM2
SHUFL,	0		/SHUFFLES
SHUFL1,	CLA		/
	TAD SH2		/LENGTH
	DCA RNDM3	/
	JMS I RNDM1	/GET RN
	CLA		/
	TAD SH3		/BLOCK SIZE
	DCA INDEX6	/
	TAD SH1		/ARRY-1
SHUF1,	TAD RNDM2	/ADD TO ARRY
	ISZ INDEX6	/N X M DONE?
	JMP SHUF1	/CONTINUE
	DCA TEMP	/DONE,IN TEMP
	TAD TEMP	/
	DCA 14		/
	TAD TEMP	/
	DCA 15		/
	TAD SH1		/
	DCA 16		/
	TAD SH1		/
	DCA 17		/
	TAD SH3		/
	DCA INDEX6	/-BLOCK SIZE
SHUF2,	TAD I 14	/
	DCA TEMP	/
	TAD I 16	/
	DCA I 15	/
	TAD TEMP	/
	DCA I 17	/
	ISZ INDEX6	/
	JMP SHUF2	/
	CLA CMA		/AC=-1
	TAD SH2		/LENGTH-1
	SZA		/
	JMP .+2		/
	JMP I SHUFL	/DONE
	DCA SH2		/NEW LENGTH
	TAD SH3		/BLOCK SIZE,-
	CIA		/+BLOCK SIZE
	TAD SH1		/ADD ARRAY
	DCA SH1		/NEW START
	JMP SHUFL1	/CONTINUE
	PAGE
IR,	0		/
	JMP IR1		/
RN,	0		/
	CLA		/
	TAD R3		/
	RAL		/
	AND K7400	/
	DCA T3		/
	TAD R2		/
	AND K177	/
	TAD T3		/
	RTL		/
	RTL		/
	RAL		/
	DCA T1		/
	TAD R3		/
	AND K177	/
	RTL		/
	RTL		/
	RAL		/
	TAD R2		/
	DCA T2		/
	SZL		/
	ISZ T1		/
	NOP		/
	TAD R3		/
	CLL RAL		/
	SZL		/
	ISZ T2		/
	SKP		/
	ISZ T1		/
	NOP		/
	CLL		/
	TAD R3		/
	DCA R3		/
	TAD R2		/
	RAL		/
	SZL		/
	ISZ T1		/
	NOP		/
	CLL		/
	TAD T2		/
	DCA R2		/
	TAD R1		/
	RAL		/
	TAD R1		/
	TAD T1		/
	DCA R1		/
	TAD R1		/
	JMP I RN	/
	HLT		/NOT USED
IR1,	CLA IAC		/
	DCA R3		/
	DCA R2		/
	DCA R1		/
	JMP I IR	/
K177,	177		/
K7400,	7400		/
T1,	0		/
T2,	0		/
T3,	0		/
PATRN,	4477		/A
	7744
	5177		/B
	2651
	4136		/C
	2241
	4177		/D
	3641
	4577		/E
	4145
	4477		/F
	4044
	4136		/G
	2645
	1077		/H
	7710
	7741		/I
	0041
	4142		/J
	4076
	1077		/K
	4324
	177		/L
	301
	3077		/M
	7730
	3077		/N
	7706
	4177		/O
	7741
	4477		/P
	3044
	4276		/Q
	376
	4477		/R
	3146
	5121		/S
	4651
	4040		/T
	4077
	177		/U
	7701
	176		/V
	7402
	677		/W
	7701
	1463		/X
	6314
	770		/Y
	7007
	4543		/Z
	6151
	4177		/[
	0000
	2040		/\
	0410
	0		/]
	7741
	2000		/^
	2077
	3410		/BACK ARROW
	1010
	0		/SPACE
	0
	7500		/!
	0
	6006		/"
	60
	3614		/NUMBER SIGN
	1436
	7721		/DOLLAR SIGN
	4677
	1446		/%
	6130
	5166		/&
	0523
	500		/APOSTROPHY
	
	6
	4163		/(
	0
	0		/)
	6341
	2050		/*
	50
	404		/+
	437
	605		/,
	0
	404		/-
	404
	1		/.
	0
	601		//
	4030
	4136		/0
	3641
	2101		/1
	177
	4523		/2
	2151
	4122		/3
	2651
	2414		/4
	477
	5172		/5
	651
	1506		/6
	4225
	4443		/7
	6050
	5126		/8
	2651
	5120		/9
	3651
	4200		/:
	0
	2601		/;
	0
	2410		/<
	0042
	1212		/=
	1212
	4200		/>
	1024
	4020		/?



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