Directory of image this file is from
This file as a plain text file
*20
PMODE
/PROGRAM CONSTANTS, PAGE ZERO
*20
C212, 212
C240, 240
C215, 215
C260, 260
DIG, 0
COUNT, 0
M40, -40
RESP, 0
M20, -20
MD300, -454
CHSIZE, 0
FULL, 200
PWTABL, PATRN-2 /AD-2 OF PW TABL
LOCHAR, 0 /DISPLAY POINTER
MD100, -144
D100, 144
MD10, -12
D10, 12
TIPE, TYPE
MASKIT, MASK
M6, -6
C10, 10
M200, -200
WSIZE, 0
POINTR, 0
NFRAME, 0
ISETUP, SETUP
SHOWIT, WINDOW
C400, 400
/PROGRAM CONSTANTS FOR RANDOM&SHUFFLE
K7, 7
TEMP, 0
R1, 0
R2, 0
R3, 0
INDEX6, 0
RNDM3, 0
RNDM2, 0
RNDM1, RNDM
SH1, 0
SH2, 0
SH3, 0
SHUFEL, SHUFL
RMNDR, RMNDRX
HOLD, 0
D300, 454
C3777, 3777
MCLOCK, 4100 /COUNT SEC/1000
C300, 300
C1000, 1000
ISLOWR, SLOWER
ADCOND, EXTIME-5 /AD+1 TOP OF CND
IREFIL, REFILL
MD60, -74 /60 TRIALS/BLK
TBLK, 0
BNTR, 0
MBLK, 0
LDF2, 0642 /LDF 2
ISTLDF, SETLDF
DCPTX2, DCPUT2
DCPTX3, DCPUT3
C1777, 1777
RNX, RN
IRX, IR
K1000, 1000
/DISPLAY PARAMETERS
WINDSP, 1 /CHAR SPACING
VERCO, 0 /VERT DISP COOR
IHORCO, 240
LMHC, 0
RMHC, 0
HCWIND, 0
MASKSP, 2
MOVE, 0
LSIZE, -6
RSIZE, -6
ONCE, 0
DOT, 56
/TIME PARAMETERS
AEXPOS, EXTIME+1 /AD COND EXP ARR
EXPOSE, 0 /-CURRENT EXPOSE
EXSPOT, 0 /AD CURRENT EXP.
PAUSET, -3000 /-MSEC PAUSE TIM
DISPOF, -10 /-MSEC TWEEN FRM
STRNG0, STRING-1 /AD-1 DISP STRIN
NTIME, 0
WIDE, 0
M7, -7
/SUBR DOUBLES AC IF FULL-SIZE CHAR
DOUBLE, 0
DCA HOLD /SAVE AC
TAD CHSIZE
SZA CLA /RETURN IF ZERO
JMP .+3
TAD HOLD
JMP I DOUBLE
TAD HOLD
CLL RAL /DOUBLE
JMP I DOUBLE
TYPE, 0
TLS
TSF
JMP .-1
CLA
JMP I TYPE
/SUBR CLEARS AND RESTARTS MSEC CLOCK
CLOCK, 0
CLA
CLLR
TAD MCLOCK
CLLR
CLA
JMP I CLOCK
/SUBR READS 2-WAY ANALOG RESP BOX:
/RETURN AC=0 IF NEITHER DOWN; AC=1 IF
/RIGHT DOWN; AC=-1 IF LEFT DOWN
RESPNS, 0
LINC
LMODE
SAM 16
PDP
PMODE
TAD M200
SMA
JMP .+6
TAD C400
SMA CLA /NEITHER:AC=0
JMP I RESPNS
STA /AC--1
JMP I RESPNS
CLA IAC /AC-1
JMP I RESPNS
/SUBR SETS HCS RELATIVE TO LMHC
SETUP, 0
CLA
TAD LSIZE
CIA
CLL RTL
TAD MASKSP
JMS DOUBLE
TAD LMHC
DCA HCWIND
TAD WSIZE
DCA TEMP
SKP
TAD WINDSP
TAD C10
ISZ TEMP
JMP .-3
TAD MASKSP
JMS DOUBLE
TAD HCWIND
DCA RMHC
JMP I SETUP
/SUBR DISPLAYS MASK FRAME
MASK, 0
CLA
DCA ONCE
TAD LSIZE
SMA
JMP RIGHT
DCA NTIME
TAD LMHC
DCA 1
TAD VERCO
MASKON, LINC
LMODE
DSC I 0
7777
PDP
PMODE
ISZ NTIME
JMP MASKON
CLA
TAD ONCE
SZA
JMP I MASK
RIGHT, ISZ ONCE
TAD RSIZE
SMA
JMP I MASK
DCA NTIME
TAD RMHC
JMP MASKON-2
/WINDOW DISPLAY ROUTINE
WINDOW, 0
CLA
TAD WSIZE
DCA NTIME
TAD HCWIND
DCA 1
TAD LOCHAR
DCA 10
WNEXT, TAD I 10
CLL RAL
TAD PWTABL
DCA 2
TAD VERCO
LINC
LMODE
DSC 2
DSC I 2
PDP
PMODE
ISZ NTIME
SKP
JMP I WINDOW
CLA
TAD WINDSP
JMS DOUBLE
TAD 1
DCA 1
JMP WNEXT
/PROGRAM STARTS HERE: READ IN 300 6-LETT
/ER WORDS INTO 4000-7407
START, HLT
CLA
LINC
LMODE
SNS I 0
ADD FULL
ESF
STC CHSIZE
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
HLT
PDP
PMODE
/INIT R.N. GENERATOR BY SETTING BIT 0
ISZ COUNT
NOP
LAS
SZA CLA
JMP .-4
JMS I IRX
JMS I RNX
ISZ COUNT
JMP .-2
CLA /SHUFFLE 1800
TAD M6 /CHARS IN 6-UNIT
DCA SH3 /GROUPS,STARTING
TAD D300
DCA SH2
TAD C3777
DCA SH1
JMS I SHUFEL
TAD C3777
DCA POINTR /AD-1 1ST WORD
HLT /STOP WHEN READY
/EACH 60-TRIAL BLOCK STARTS HERE
BLOCK, TAD MD60
DCA BNTR
STA
TAD MD60 /FORM AD-1 OF
TAD ADCOND /ARRAY OF CONDS.
DCA SH1
TAD MD60
CIA
DCA SH2
STA
DCA SH3
JMS I SHUFEL /SHUFFLE CONDS.
/EACH TRIAL BEGINS HERE
TRIAL, TAD ADCOND /AD CONDS.ARRAY
TAD BNTR /TRL NO IN BLOCK
DCA 1 /AD CURR. COND.
TAD I 1
DCA WSIZE /TRIAL COND.
TAD WSIZE
TAD AEXPOS /FORM ADDR OF
DCA EXSPOT /AD OF CURR EXP
TAD I EXSPOT
DCA EXPOSE
/ENCODES NEXT TEXT STRING WHICH CONSISTS
/OF -COND LEADING & TRAILING DOTS WITH
/THE SIX INTERVENING LETTERS=STIMULUS
TAD WSIZE
DCA WIDE
TAD STRNG0 /AD-1 STRING
DCA 10
TAD DOT
DCA I 10
ISZ WIDE
JMP .-3
TAD M6
DCA WIDE
TAD POINTR
DCA 11
TAD I 11
DCA I 10
ISZ WIDE
JMP .-3
TAD WSIZE
DCA WIDE
TAD DOT
DCA I 10
ISZ WIDE
JMP .-3
TAD STRNG0
DCA LOCHAR /AD-1 IST CHAR
WAITIN, TAD IHORCO
DCA LMHC
TAD LMHC
DCA 1
TAD VERCO
LINC
LMODE
DSC I 0 /READY DOTS
7777
PDP
PMODE
JMS RESPNS /WAIT FOR READY
SNA CLA
JMP WAITIN+2
TAD M7
TAD WSIZE
DCA NFRAME /7+COND FRAMES
JMS I ISETUP /SET NEW HCS
JMS CLOCK /START MSEC CLOC
JMS I MASKIT /WARNING MASK
CLCA
TAD PAUSET
SPA CLA
JMP .-4
GO, JMS I ISETUP /LOOP THRU FRAME
JMS CLOCK /RESTART CLOCK
JMS I MASKIT
JMS I SHOWIT /DISPLAY FRAME
CLCA
TAD EXPOSE /ON-TIME
SPA CLA
JMP .-5
JMS CLOCK
JMS I MASKIT
CLCA
TAD DISPOF
SPA CLA
JMP .-4
TAD MOVE /SLIDE FRAME
JMS DOUBLE
TAD LMHC
DCA LMHC /NEW H.C.S
ISZ LOCHAR /SLIDE STRING
ISZ NFRAME /ANOTHER FRAME?
JMP GO /DO IT!
CLLR /DONE: STOP CLOC
JMS I MASKIT /MASK TILL RSP.
JMS RESPNS
SNA
JMP .-3 /WAIT FOR RESP
SPA
CLA
DCA RESP /0 OR 1 RESP
TAD M6
DCA WIDE
TAD POINTR
DCA 10
TAD WSIZE
CIA
TAD C260
JMS I TIPE /TYPE COND
TAD C240
JMS I TIPE /" "
TAD I 10
TAD C300
JMS I TIPE /TYPE WORD
ISZ WIDE
JMP .-4
TAD C240
JMS I TIPE
TAD RESP
TAD C260
JMS I TIPE /TYPE 0/1 RESP
TAD EXPOSE
CIA
DCA EXPOSE
TAD DISPOF
CIA
TAD EXPOSE
JMS I DCPTX3 /FORMAT(1X,I3)
/IF RESP=1 ("YES"), TYPE "!",THEN
/TAKE KEYBOARD FEEDBACK: " "
/IF CORRECT, ANY KEY IF INCORRECT;
/NO CHANGE IN EXPOSURE CONDITION IF
/"YES" WAS INCORRECT. IF RESP=0, TYPES
/TWO BLANKS (NOTHING FURTHER ENTERED).
TAD C240
JMS I TIPE /BLANK
TAD RESP
TAD C240
JMS I TIPE /" " OR "!"
TAD RESP
SNA CLA
JMP NORESP
KCC
KSF
JMP .-1
KRB /READ CHAR
DCA 6
TAD 6
JMS I TIPE
TAD 6
CIA
TAD C240 /=" "?
SNA CLA
JMP NORESP
STA
DCA RESP /WRONG:RESP=-1
NORESP, TAD C212
JMS I TIPE
TAD C215
JMS I TIPE /CR,LF
SAVE, TAD POINTR
DCA 12 /SAVE TRIAL DATA
TAD WSIZE
CIA
DCA I 12 /FIRST WD=COND
TAD DISPOF
CIA
TAD EXPOSE /2ND=EXPOSURE
DCA I 12
TAD RESP
DCA I 12 /3RD=-1,0,1 RESP
TAD RESP
SNA
JMP I ISLOWR /RESP=0:INCREASE
SMA CLA /COND. EXP
JMP FASTER /RESP=1:DECREASE
/SW 3 -ON:INCORRECT IDENT.(RESP=-1)
/INCREASES STAIRCASE EXPOSURE -OFF:
/DOESNT EFFECT STAIRCASE
LINC
LMODE
SNS 3
JMP REFILL-1 /NO CHANGE
PDP
PMODE
SLOWER, LAS /STEP SIZE=L SWS
JMP REFILL
FASTER, LAS
CIA /STEP SIZE=-L SW
JMP REFILL
LMODE
PDP
PMODE
REFILL, TAD EXPOSE
CIA
DCA I EXSPOT /SAVE -MSEC EXP
STL IAC RTL
TAD POINTR /POINTR+6=AD-1
DCA POINTR /NEXT WORD
ISZ BNTR /END BLOCK?
JMP I ITRIAL
TAD C212 /EXTRA LF
JMS I TIPE /AT END BLOCK
HLT /THEN PAUSE
JMP I IBLOCK /ANOTHER
ITRIAL, TRIAL
IBLOCK, BLOCK
/DONE WITH SESSION: GET TBLK FROM R SWS
/AND RECORD SAVED TRIAL DATA ON UNIT 1
RECORD, LAS
DCA TBLK
DCA I 12 /NOTE END FILE
TAD LDF2 /PREPARE LDF N
DCA I ISTLDF /DCA SETLDF
STA CLL RAL /2 GROUPS OF
DCA COUNT /4 BLKS EACH
STL RAR
DCA MBLK /MBLK=4000
LINC
LMODE
SETLDF, 0 /LDF N
ADD TBLK
ADD MBLK
STC .+2
WRC U
0 /2ND LTAPE INSTR
PDP
PMODE
ISZ TBLK
CLA
TAD C1000
TAD MBLK
SZA /END OF LDF?
JMP SETLDF-2
ISZ COUNT /YES: FIELD?
JMP .+3
HLT /FINISHED
JMP .-1 /END TRAP
ISZ I ISTLDF /ISZ SETLDF
JMP I STLDF3
STLDF3, SETLDF-3
/PROGRAM ENDS HERE. NOTE THAT MUST
/RELOAD PROGRAM TO RERUN
/ARRAY OF 60-TRIAL CONDS FOR "REAL"
/BLOCKS: CURRENTLY SET FOR 1/6 OF EACH
/WIDTH CONDITION: 1-6
WPCOND, -1
-2
-3
-4
-5
-6
-1
-2
-3
-4
-5
-6
-1
-2
-3
-4
-5
-6
-1
-2
-3
-4
-5
-6
-1
-2
-3
-4
-5
-6
-1
-2
-3
-4
-5
-6
-1
-2
-3
-4
-5
-6
-1
-2
-3
-4
-5
-6
-1
-2
-3
-4
-5
-6
-1
-2
-3
-4
-5
-6
/ARRAY OF COND. EXPOSURE DURATIONS
-24 /6
-24 /5
-24 /4
-24 /3
-24 /2
EXTIME, -24 /COND 1 EXP
/PATTERN WORDS FOR CHAR DISPL.
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 /?
2055
/RANDOM PACKAGE BEGINS HERE
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 /
/TELETYPE OUTPUT: UNSIGNED DECIMAL
/INTEGER IN FORMAT(1X,I2)
N, 0
DCPUT2, 0
AND K177
DCA N
TAD C240
JMS I TIPE
TAD C260
DCA DIG
TAD N
TAD MD10
SPA
JMP .+3
ISZ DIG
JMP .-4
TAD D10
DCA N
TAD DIG
JMS I TIPE
TAD N
TAD C260
JMS I TIPE
JMP I DCPUT2
/SUBR TELETYPE OUTPUT: UNSIGNED DECIMAL
/INTEGER, FORMAT(1X,I3)
DCPUT3, 0
AND C1777
DCA N
TAD C240
JMS I TIPE
TAD C260
DCA DIG
TAD N
TAD MD100
SPA
JMP .+3
ISZ DIG
JMP .-4
TAD D100
DCA N
TAD DCPUT3
DCA DCPUT2
TAD DIG
JMS I TIPE
JMP DCPUT2+4
/STRING STORAGE ARRAY FOLLOWS
STRING, 0