Merge branch 'master' of https://github.com/DoctorWkt/pdp7-unix
This commit is contained in:
+19
-6
@@ -26,9 +26,14 @@ Details of the files:
|
|||||||
* s9.s: pages 53-55 of 01-s1.pdf
|
* s9.s: pages 53-55 of 01-s1.pdf
|
||||||
* sysmap: pages 57-61 of 01-s1.pdf
|
* sysmap: pages 57-61 of 01-s1.pdf
|
||||||
* sop.s pages 62-63 of 01-s1.pdf
|
* sop.s pages 62-63 of 01-s1.pdf
|
||||||
* sx.s: temp additional symbol defns
|
|
||||||
* maksys.s: page 64 of 01-s1.pdf
|
* maksys.s: page 64 of 01-s1.pdf
|
||||||
* trysys.s: page 65 of 01-s1.pdf
|
* trysys.s: page 65 of 01-s1.pdf
|
||||||
|
* scope.v pages 3-18 of 03-scope.pdf
|
||||||
|
* cas.s: pages 1-17 of 04-cas.pdf
|
||||||
|
* adm.s pages 2-11 of 05-1-4.pdf
|
||||||
|
* ald.s pages 13-17 of 05-1-4.pdf
|
||||||
|
* apr.s pages 19-30 of 05-1-4.pdf
|
||||||
|
* as.s: pages 32-48 of 05-1-4.pdf
|
||||||
* bl.s: pages 3-6 of 06-5-12.pdf
|
* bl.s: pages 3-6 of 06-5-12.pdf
|
||||||
* bc.s: pages 7-11 of 06-5-12.pdf
|
* bc.s: pages 7-11 of 06-5-12.pdf
|
||||||
* bi.s: pages 12-19 of 06-5-12.pdf
|
* bi.s: pages 12-19 of 06-5-12.pdf
|
||||||
@@ -46,19 +51,18 @@ Details of the files:
|
|||||||
* dskio.s: pages 42-43 of 07-13-19.pdf
|
* dskio.s: pages 42-43 of 07-13-19.pdf
|
||||||
* dsw.s: page 45 of 07-13-19.pdf
|
* dsw.s: page 45 of 07-13-19.pdf
|
||||||
* init.s pages 47-51 of 07-13-19.pdf
|
* init.s pages 47-51 of 07-13-19.pdf
|
||||||
* cas.s: pages 1-17 of 04-cas.pdf
|
|
||||||
* ind.b: page 2 of 08-rest.pdf
|
* ind.b: page 2 of 08-rest.pdf
|
||||||
* lcase.b: page 4 of 08-rest.pdf
|
* lcase.b: page 4 of 08-rest.pdf
|
||||||
* adm.s pages 2-11 of 05-1-4.pdf
|
|
||||||
* ald.s pages 13-17 of 05-1-4.pdf
|
|
||||||
* apr.s pages 19-30 of 05-1-4.pdf
|
|
||||||
* as.s: pages 32-48 of 05-1-4.pdf
|
|
||||||
* ed1.s: pages 7-20 of 08-rest.pdf
|
* ed1.s: pages 7-20 of 08-rest.pdf
|
||||||
* ed2.s: pages 21-29 of 08-rest.pdf
|
* ed2.s: pages 21-29 of 08-rest.pdf
|
||||||
|
* ln.s pages 15-16 of 09-1-35.pdf
|
||||||
|
* nm.s pages 31-34 of 09-1-35.pdf
|
||||||
|
* op.s page 35 of 09-1-35.pdf
|
||||||
* pd.s: page 1 of 11-45-91.pdf
|
* pd.s: page 1 of 11-45-91.pdf
|
||||||
* psych.s: page 2-6 of 11-45-91.pdf
|
* psych.s: page 2-6 of 11-45-91.pdf
|
||||||
* rm.s: page 7 of 11-45-91.pdf
|
* rm.s: page 7 of 11-45-91.pdf
|
||||||
* rn.s: page 8 of 11-45-91.pdf
|
* rn.s: page 8 of 11-45-91.pdf
|
||||||
|
* roff.s: pages 9-24 of 11-45-91.pdf
|
||||||
* salv.s: pages 25-29 of 11-45-91.pdf
|
* salv.s: pages 25-29 of 11-45-91.pdf
|
||||||
* sh.s: pages 30-36 of 11-45-91.pdf
|
* sh.s: pages 30-36 of 11-45-91.pdf
|
||||||
* st-1.s pages 1-5 of 12-92-119.pdf
|
* st-1.s pages 1-5 of 12-92-119.pdf
|
||||||
@@ -68,6 +72,15 @@ Details of the files:
|
|||||||
* st-5.s pages 19-20 of 12-92-119.pdf
|
* st-5.s pages 19-20 of 12-92-119.pdf
|
||||||
* st-6.s pages 21-25 of 12-92-119.pdf
|
* st-6.s pages 21-25 of 12-92-119.pdf
|
||||||
* st-7.s pages 26-28 of 12-92-119.pdf
|
* st-7.s pages 26-28 of 12-92-119.pdf
|
||||||
|
* stat.s: pages 1-2 of 13-120-147.pdf
|
||||||
|
* t1,s: pages 5-6 of 13-120-147.pdf
|
||||||
|
* t2,s: pages 7-13 of 13-120-147.pdf
|
||||||
|
* t3,s: pages 14-18 of 13-120-147.pdf
|
||||||
|
* t4,s: pages 19-20 of 13-120-147.pdf
|
||||||
|
* t5,s: pages 21-22 of 13-120-147.pdf
|
||||||
|
* t6,s: pages 23-25 of 13-120-147.pdf
|
||||||
|
* t7,s: pages 26-27 of 13-120-147.pdf
|
||||||
|
* t8,s: pages 28 of 13-120-147.pdf
|
||||||
* ttt1.s pages 1-12 of 14-148-165.pdf
|
* ttt1.s pages 1-12 of 14-148-165.pdf
|
||||||
* ttt2.s pages 13-17 of 14-148-165.pdf
|
* ttt2.s pages 13-17 of 14-148-165.pdf
|
||||||
* un.s page 18 of 14-148-165.pdf
|
* un.s page 18 of 14-148-165.pdf
|
||||||
|
|||||||
+942
@@ -0,0 +1,942 @@
|
|||||||
|
" ** 11-45-91.pdf page 9
|
||||||
|
" roff
|
||||||
|
|
||||||
|
lac i 017777
|
||||||
|
sad d4
|
||||||
|
sys exit
|
||||||
|
lac 017777
|
||||||
|
tad d1
|
||||||
|
dac fname
|
||||||
|
jms nextfile
|
||||||
|
lac obufp
|
||||||
|
dac otal
|
||||||
|
|
||||||
|
" main i/o loop
|
||||||
|
1:
|
||||||
|
jms readline
|
||||||
|
jmp 3f
|
||||||
|
lac rawchar
|
||||||
|
sad cc
|
||||||
|
jmp 2f
|
||||||
|
jms text
|
||||||
|
jmp 1b
|
||||||
|
2:
|
||||||
|
jms control
|
||||||
|
jmp 1b
|
||||||
|
3:
|
||||||
|
jms break
|
||||||
|
jms eject
|
||||||
|
lac otal
|
||||||
|
sma
|
||||||
|
jmp 1f
|
||||||
|
cla
|
||||||
|
jms putsc; otal
|
||||||
|
1:
|
||||||
|
-1
|
||||||
|
tad obufp
|
||||||
|
cma
|
||||||
|
tad otal
|
||||||
|
dac 1f
|
||||||
|
lac output
|
||||||
|
sys write; obuf; 1: 0
|
||||||
|
sys exit
|
||||||
|
|
||||||
|
" read line routine
|
||||||
|
readline: 0
|
||||||
|
law rawchar-1
|
||||||
|
dac 8
|
||||||
|
1:
|
||||||
|
jms getchar
|
||||||
|
dac i 8
|
||||||
|
sad o12
|
||||||
|
skp
|
||||||
|
jmp 1b
|
||||||
|
isz readline
|
||||||
|
jmp i readline
|
||||||
|
|
||||||
|
" read character routine
|
||||||
|
getchar: 0
|
||||||
|
lac ital
|
||||||
|
sad eibufp
|
||||||
|
skp
|
||||||
|
jmp 1f
|
||||||
|
-64
|
||||||
|
" ** 11-45-91.pdf page 10
|
||||||
|
dac 3f
|
||||||
|
law ibuf-1
|
||||||
|
dac 15
|
||||||
|
2:
|
||||||
|
dzm i 15
|
||||||
|
isz 3f
|
||||||
|
jmp 2b
|
||||||
|
lac input
|
||||||
|
sys read; ibuf; 64
|
||||||
|
sna
|
||||||
|
jms nextfile
|
||||||
|
lac ibufp
|
||||||
|
dac ital
|
||||||
|
1:
|
||||||
|
jms getsc; ital
|
||||||
|
sza
|
||||||
|
jmp i getchar
|
||||||
|
jmp getchar+1
|
||||||
|
3: 0
|
||||||
|
|
||||||
|
putchar: 0
|
||||||
|
jms putsc; otal
|
||||||
|
lac otal
|
||||||
|
sad eobufp
|
||||||
|
skp
|
||||||
|
jmp i putchar
|
||||||
|
lac output
|
||||||
|
sys write; obuf; 64
|
||||||
|
lac obufp
|
||||||
|
dac otal
|
||||||
|
jmp i putchar
|
||||||
|
|
||||||
|
laci: 0
|
||||||
|
dac 1f
|
||||||
|
lac i 1f
|
||||||
|
jmp i laci
|
||||||
|
1: 0
|
||||||
|
|
||||||
|
nextfile: 0
|
||||||
|
lac i 017777
|
||||||
|
sad d4
|
||||||
|
jmp i readline
|
||||||
|
tad dm4
|
||||||
|
dac i 017777
|
||||||
|
lac fname
|
||||||
|
tad d4
|
||||||
|
dac fname
|
||||||
|
lac input
|
||||||
|
sys close
|
||||||
|
sys open; fname: 0; 0
|
||||||
|
sma
|
||||||
|
jmp 1f
|
||||||
|
lac fname
|
||||||
|
dac 2f
|
||||||
|
lac d1
|
||||||
|
sys write; 2: 0; 4
|
||||||
|
lac d1
|
||||||
|
sys write; 2f; 2
|
||||||
|
sys exit
|
||||||
|
2: 040077;012
|
||||||
|
1:
|
||||||
|
" ** 11-45-91.pdf page 11
|
||||||
|
dac input
|
||||||
|
lac eibufp
|
||||||
|
dac otal
|
||||||
|
jmp i nextfile
|
||||||
|
|
||||||
|
getsc:0
|
||||||
|
lac i getsc
|
||||||
|
dac sctalp
|
||||||
|
isz getsc
|
||||||
|
lac i sctalp
|
||||||
|
dac sctal
|
||||||
|
add o400000
|
||||||
|
dac i sctalp
|
||||||
|
ral
|
||||||
|
lac i sctal
|
||||||
|
szl
|
||||||
|
lrss 9
|
||||||
|
and o177
|
||||||
|
jmp i getsc
|
||||||
|
|
||||||
|
putsc: 0
|
||||||
|
and o177
|
||||||
|
lmq
|
||||||
|
lac i putsc
|
||||||
|
dac sctalp
|
||||||
|
isz putsc
|
||||||
|
lac i sctalp
|
||||||
|
dac sctal
|
||||||
|
add o400000
|
||||||
|
dac i sctalp
|
||||||
|
sma cla
|
||||||
|
jmp 1f
|
||||||
|
llss 27
|
||||||
|
dac i sctal
|
||||||
|
lrss 9
|
||||||
|
jmp i putsc
|
||||||
|
1:
|
||||||
|
lac i sctal
|
||||||
|
omq
|
||||||
|
dac i sctal
|
||||||
|
lacq
|
||||||
|
jmp i putsc
|
||||||
|
|
||||||
|
" conmtrol card decoder
|
||||||
|
control: 0
|
||||||
|
law 2f-1
|
||||||
|
dac 8
|
||||||
|
-ncase
|
||||||
|
dac c
|
||||||
|
lac rawchar+1
|
||||||
|
alss 9
|
||||||
|
xor rawchar+2
|
||||||
|
1:
|
||||||
|
sad i 8
|
||||||
|
jmp i 8
|
||||||
|
isz 8
|
||||||
|
isz c
|
||||||
|
jmp 1b
|
||||||
|
jmp i control
|
||||||
|
2:
|
||||||
|
ncase = 0
|
||||||
|
" ** 11-45-91.pdf page 12
|
||||||
|
<ad>; jmp casead; ncase = ncase+1
|
||||||
|
<bp>; jmp casebp; ncase = ncase+1
|
||||||
|
<br>; jmp casebr; ncase = ncase+1
|
||||||
|
<cc>; jmp casecc; ncase = ncase+1
|
||||||
|
<ce>; jmp casece; ncase = ncase+1
|
||||||
|
<ds>; jmp caseds; ncase = ncase+1
|
||||||
|
<fi>; jmp casefi; ncase = ncase+1
|
||||||
|
<in>; jmp casein; ncase = ncase+1
|
||||||
|
<li>; jmp caseli; ncase = ncase+1
|
||||||
|
<ll>; jmp casell; ncase = ncase+1
|
||||||
|
<ls>; jmp casels; ncase = ncase+1
|
||||||
|
<na>; jmp casena; ncase = ncase+1
|
||||||
|
<ne>; jmp casene; ncase = ncase+1
|
||||||
|
<nf>; jmp casenf; ncase = ncase+1
|
||||||
|
<pl>; jmp casepl; ncase = ncase+1
|
||||||
|
<sp>; jmp casesp; ncase = ncase+1
|
||||||
|
<ss>; jmp casess; ncase = ncase+1
|
||||||
|
<ti>; jmp caseti; ncase = ncase+1
|
||||||
|
<ul>; jmp caseul; ncase = ncase+1
|
||||||
|
<un>; jmp caseun; ncase = ncase+1
|
||||||
|
|
||||||
|
" control cases
|
||||||
|
casead:
|
||||||
|
jms break
|
||||||
|
-1
|
||||||
|
dac ad
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
casebp:
|
||||||
|
jms break
|
||||||
|
jms eject
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
casebr:
|
||||||
|
jms break
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
casecc:
|
||||||
|
jms skipcont
|
||||||
|
lac i 8
|
||||||
|
sad o12
|
||||||
|
jmp i control
|
||||||
|
dac cc
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
casece:
|
||||||
|
jms break
|
||||||
|
jms number; d0
|
||||||
|
spa
|
||||||
|
cla
|
||||||
|
dac ce
|
||||||
|
jms need; ce
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
caseds:
|
||||||
|
jms break
|
||||||
|
lac d2
|
||||||
|
dac ls
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
casefi:
|
||||||
|
" ** 11-45-91.pdf page 13
|
||||||
|
jms break
|
||||||
|
-1
|
||||||
|
dac fi
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
casein:
|
||||||
|
jms number; in
|
||||||
|
cma
|
||||||
|
tad d1
|
||||||
|
sma
|
||||||
|
cla
|
||||||
|
dac in
|
||||||
|
dac un
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
caseli:
|
||||||
|
jms number; d0
|
||||||
|
cma
|
||||||
|
tad d1
|
||||||
|
sma
|
||||||
|
jmp i control
|
||||||
|
dac 2f
|
||||||
|
1:
|
||||||
|
jms readline
|
||||||
|
jmp i control
|
||||||
|
jms text
|
||||||
|
isz 2f
|
||||||
|
jmp 1b
|
||||||
|
jmp i control
|
||||||
|
2: 0
|
||||||
|
|
||||||
|
casell:
|
||||||
|
jms number; ll
|
||||||
|
spa
|
||||||
|
cla
|
||||||
|
dac ll
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
casels:
|
||||||
|
jms number; d0
|
||||||
|
sza; spa
|
||||||
|
lac d1
|
||||||
|
dac ls
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
casena:
|
||||||
|
jms break
|
||||||
|
dzm ad
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
casene:
|
||||||
|
jms number; d0
|
||||||
|
spa
|
||||||
|
cla
|
||||||
|
dac c
|
||||||
|
jms need; c
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
casenf:
|
||||||
|
jms break
|
||||||
|
dzm fi
|
||||||
|
" ** 11-45-91.pdf page 14
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
casepl:
|
||||||
|
jms number; pl
|
||||||
|
spa
|
||||||
|
cla
|
||||||
|
dac pl
|
||||||
|
jms topbot
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
casesp:
|
||||||
|
jms break
|
||||||
|
jms number; d0
|
||||||
|
cma
|
||||||
|
tad d1
|
||||||
|
sma
|
||||||
|
jmp i control
|
||||||
|
dac c
|
||||||
|
1:
|
||||||
|
jms nline
|
||||||
|
isz c
|
||||||
|
jmp 1b
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
casess:
|
||||||
|
jms break
|
||||||
|
lac d1
|
||||||
|
dac ls
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
caseti:
|
||||||
|
jms break
|
||||||
|
jms number; in
|
||||||
|
spa
|
||||||
|
cla
|
||||||
|
dac un
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
caseul:
|
||||||
|
jms number; d0
|
||||||
|
spa
|
||||||
|
cla
|
||||||
|
dac ul
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
caseun:
|
||||||
|
jms number; d0
|
||||||
|
tad in
|
||||||
|
sma
|
||||||
|
cla
|
||||||
|
dac un
|
||||||
|
jmp i control
|
||||||
|
|
||||||
|
" selected short routines
|
||||||
|
skipcont: 0
|
||||||
|
law rawchar-1
|
||||||
|
dac 8
|
||||||
|
1:
|
||||||
|
lac i 8
|
||||||
|
sad o40
|
||||||
|
jmp 1f
|
||||||
|
" ** 11-45-91.pdf page 15
|
||||||
|
sad o12
|
||||||
|
jmp 2f
|
||||||
|
jmp 1b
|
||||||
|
1:
|
||||||
|
lac i 8
|
||||||
|
sad o12
|
||||||
|
jmp 2f
|
||||||
|
sad o40
|
||||||
|
jmp 1b
|
||||||
|
2:
|
||||||
|
-1
|
||||||
|
tad 8
|
||||||
|
dac 8
|
||||||
|
jmp i skipcont
|
||||||
|
|
||||||
|
break: 0
|
||||||
|
lac nc
|
||||||
|
sna
|
||||||
|
jmp i break
|
||||||
|
-2
|
||||||
|
tad ls
|
||||||
|
cma
|
||||||
|
sma
|
||||||
|
jmp 2f
|
||||||
|
dac c
|
||||||
|
1:
|
||||||
|
jms nline
|
||||||
|
isz c
|
||||||
|
jmp 1b
|
||||||
|
2:
|
||||||
|
lac nl
|
||||||
|
sad bl
|
||||||
|
jms eject
|
||||||
|
lac nl
|
||||||
|
sza
|
||||||
|
jmp 2f
|
||||||
|
-5
|
||||||
|
dac c
|
||||||
|
1:
|
||||||
|
lac o55
|
||||||
|
jms putchar
|
||||||
|
isz c
|
||||||
|
jmp 1f
|
||||||
|
lac ma1
|
||||||
|
dac c
|
||||||
|
1:
|
||||||
|
jms newline
|
||||||
|
isz c
|
||||||
|
jmp 1b
|
||||||
|
2:
|
||||||
|
law char-1
|
||||||
|
dac 8
|
||||||
|
lac un
|
||||||
|
sza
|
||||||
|
jmp 1f
|
||||||
|
dac c
|
||||||
|
2:
|
||||||
|
lac o40
|
||||||
|
jms putchar
|
||||||
|
isz c
|
||||||
|
jmp 2b
|
||||||
|
" ** 11-45-91.pdf page 16
|
||||||
|
1:
|
||||||
|
lac i 8
|
||||||
|
jms putchar
|
||||||
|
isz nc
|
||||||
|
jmp 1b
|
||||||
|
jms newline
|
||||||
|
dzm nwd
|
||||||
|
dzm ne
|
||||||
|
lac in
|
||||||
|
dac un
|
||||||
|
jmp i break
|
||||||
|
|
||||||
|
newline: 0
|
||||||
|
lac o12
|
||||||
|
jms putchar
|
||||||
|
isz nl
|
||||||
|
jmp i newline
|
||||||
|
|
||||||
|
nline: 0
|
||||||
|
lac nl
|
||||||
|
sna
|
||||||
|
jmp i nline
|
||||||
|
sad bl
|
||||||
|
jmp i nline
|
||||||
|
jms newline
|
||||||
|
jmp i nline
|
||||||
|
|
||||||
|
number: 0
|
||||||
|
dzm num
|
||||||
|
dzm sign
|
||||||
|
-1
|
||||||
|
dac any
|
||||||
|
jms skipcont
|
||||||
|
1:
|
||||||
|
lac i 8
|
||||||
|
sad o12
|
||||||
|
jmp 3f
|
||||||
|
sad o53
|
||||||
|
jmp 2f
|
||||||
|
tad om72
|
||||||
|
sma
|
||||||
|
jmp 1b
|
||||||
|
tad o12
|
||||||
|
spa
|
||||||
|
jmp 1b
|
||||||
|
dac any
|
||||||
|
lac num
|
||||||
|
cll; mul; 10
|
||||||
|
lacq
|
||||||
|
tad any
|
||||||
|
dac num
|
||||||
|
jmp 1b
|
||||||
|
2:
|
||||||
|
dac sign
|
||||||
|
jmp 1b
|
||||||
|
3:
|
||||||
|
lac any
|
||||||
|
sma
|
||||||
|
jmp 1f
|
||||||
|
" ** 11-45-91.pdf page 17
|
||||||
|
lac d1
|
||||||
|
isz number
|
||||||
|
jmp i number
|
||||||
|
1:
|
||||||
|
lac sign
|
||||||
|
sza
|
||||||
|
jmp 1f
|
||||||
|
lac num
|
||||||
|
isz number
|
||||||
|
jmp i number
|
||||||
|
1:
|
||||||
|
sad o53
|
||||||
|
jmp 1f
|
||||||
|
lac i number
|
||||||
|
jms laci
|
||||||
|
cma
|
||||||
|
tad num
|
||||||
|
cma
|
||||||
|
isz number
|
||||||
|
jmp i number
|
||||||
|
1:
|
||||||
|
lac i number
|
||||||
|
jms laci
|
||||||
|
tad num
|
||||||
|
isz number
|
||||||
|
jmp i number
|
||||||
|
|
||||||
|
eject: 0
|
||||||
|
lac pl
|
||||||
|
sna
|
||||||
|
jmp i eject
|
||||||
|
lac nl
|
||||||
|
sna
|
||||||
|
jmp i eject
|
||||||
|
1:
|
||||||
|
sad pl
|
||||||
|
jmp 1f
|
||||||
|
jms newline
|
||||||
|
lac nl
|
||||||
|
jmp 1b
|
||||||
|
1:
|
||||||
|
dzm nl
|
||||||
|
jmp i eject
|
||||||
|
|
||||||
|
storechar: 0
|
||||||
|
lmq
|
||||||
|
lac nc
|
||||||
|
sza
|
||||||
|
jmp 1f
|
||||||
|
law char-1
|
||||||
|
dac 10
|
||||||
|
1:
|
||||||
|
lacq
|
||||||
|
dac i 10
|
||||||
|
jms width
|
||||||
|
cma
|
||||||
|
tad d1
|
||||||
|
tad ne
|
||||||
|
dac ne
|
||||||
|
-1
|
||||||
|
tad nc
|
||||||
|
" ** 11-45-91.pdf page 18
|
||||||
|
dac nc
|
||||||
|
jmp i storechar
|
||||||
|
|
||||||
|
getword: 0
|
||||||
|
law word-1
|
||||||
|
dac 8
|
||||||
|
" *** hand written box/arrow to move after 1:
|
||||||
|
dzm wne
|
||||||
|
dzm wch
|
||||||
|
1:
|
||||||
|
lac i 11
|
||||||
|
sad o12
|
||||||
|
jmp i getword
|
||||||
|
2:
|
||||||
|
dac i 8
|
||||||
|
lmq
|
||||||
|
jms width
|
||||||
|
cma
|
||||||
|
jms width
|
||||||
|
cma
|
||||||
|
tad d1
|
||||||
|
tad wne
|
||||||
|
dac wne
|
||||||
|
-1
|
||||||
|
tad wch
|
||||||
|
dac wch
|
||||||
|
lacq
|
||||||
|
sad o40
|
||||||
|
jmp 1b
|
||||||
|
lac word
|
||||||
|
sad o40
|
||||||
|
jmp 1f
|
||||||
|
lac o40
|
||||||
|
dac word
|
||||||
|
lacq
|
||||||
|
jmp 2b
|
||||||
|
1:
|
||||||
|
lac i 11
|
||||||
|
sad o12
|
||||||
|
jmp 1f
|
||||||
|
sad o40
|
||||||
|
jmp 1f
|
||||||
|
dac i 8
|
||||||
|
jms width
|
||||||
|
cma
|
||||||
|
tad d1
|
||||||
|
tad wne
|
||||||
|
dac wne
|
||||||
|
-1
|
||||||
|
tad wch
|
||||||
|
dac wch
|
||||||
|
jmp 1b
|
||||||
|
1:
|
||||||
|
-1
|
||||||
|
tad 11
|
||||||
|
dac 11
|
||||||
|
isz getword
|
||||||
|
jmp i getword
|
||||||
|
|
||||||
|
need: 0
|
||||||
|
lac ls
|
||||||
|
dac 1f
|
||||||
|
lac i need
|
||||||
|
jms laci
|
||||||
|
" ** 11-45-91.pdf page 19
|
||||||
|
cll; mul; 1: 0
|
||||||
|
lacq
|
||||||
|
tad nl
|
||||||
|
cma
|
||||||
|
tad bl
|
||||||
|
spa
|
||||||
|
jms eject
|
||||||
|
isz need
|
||||||
|
jmp i need
|
||||||
|
|
||||||
|
" text line routine
|
||||||
|
text: 0
|
||||||
|
-1
|
||||||
|
tad ul
|
||||||
|
sma
|
||||||
|
jms undline
|
||||||
|
-1
|
||||||
|
tad ce
|
||||||
|
sma
|
||||||
|
jms center
|
||||||
|
law rawchar-1
|
||||||
|
dac 11
|
||||||
|
lac rawchar
|
||||||
|
sad o12
|
||||||
|
jmp 1f-1
|
||||||
|
sad o40
|
||||||
|
lac fi
|
||||||
|
sza
|
||||||
|
jmp 2f
|
||||||
|
skp
|
||||||
|
jms break
|
||||||
|
1:
|
||||||
|
lac i 11
|
||||||
|
sad o12
|
||||||
|
jmp 1f
|
||||||
|
jms storechar
|
||||||
|
jmp 1b
|
||||||
|
1:
|
||||||
|
lac nc
|
||||||
|
sna
|
||||||
|
jms nline
|
||||||
|
jms break
|
||||||
|
jmp i text
|
||||||
|
2:
|
||||||
|
jms getword; jmp i text
|
||||||
|
lac wne
|
||||||
|
tad ne
|
||||||
|
tad un
|
||||||
|
tad ll
|
||||||
|
spa
|
||||||
|
jms adjust
|
||||||
|
law word-1
|
||||||
|
dac 8
|
||||||
|
lac nwd
|
||||||
|
sza
|
||||||
|
jmp 3f
|
||||||
|
1:
|
||||||
|
lac i 8
|
||||||
|
sad o40
|
||||||
|
skp
|
||||||
|
" ** 11-45-91.pdf page 20
|
||||||
|
jmp 3f+1
|
||||||
|
isz wch
|
||||||
|
jmp 1b
|
||||||
|
3:
|
||||||
|
lac i 8
|
||||||
|
jms storechar
|
||||||
|
isz wch
|
||||||
|
jmp 3b
|
||||||
|
isz nwd
|
||||||
|
jmp 2b
|
||||||
|
|
||||||
|
" adjust routine
|
||||||
|
adjust: 0
|
||||||
|
lac nwd
|
||||||
|
sna
|
||||||
|
jmp i adjust
|
||||||
|
dac 8
|
||||||
|
law tchar-1
|
||||||
|
dac 9
|
||||||
|
dzm ndiv
|
||||||
|
dzm nrem
|
||||||
|
lac ad
|
||||||
|
sna
|
||||||
|
jmp 1f
|
||||||
|
-1
|
||||||
|
tad nwd
|
||||||
|
sna
|
||||||
|
jmp 1f
|
||||||
|
dac 2f
|
||||||
|
lac ll
|
||||||
|
tad ne
|
||||||
|
tad un
|
||||||
|
spa
|
||||||
|
jmp 1f
|
||||||
|
cll; idiv; 2: 0
|
||||||
|
dac nrem
|
||||||
|
lacq
|
||||||
|
dac ndiv
|
||||||
|
1:
|
||||||
|
lac i 8
|
||||||
|
sad o40
|
||||||
|
jms fill
|
||||||
|
dac i 9
|
||||||
|
isz nc
|
||||||
|
jmp 1b
|
||||||
|
lac o12
|
||||||
|
dac i 9
|
||||||
|
law tchar-1
|
||||||
|
dac 8
|
||||||
|
2:
|
||||||
|
lac i 8
|
||||||
|
sad o12
|
||||||
|
jmp 2f
|
||||||
|
jms storechar
|
||||||
|
jmp 2b
|
||||||
|
2:
|
||||||
|
jms break
|
||||||
|
jmp i adjust
|
||||||
|
|
||||||
|
fill: 0
|
||||||
|
" ** 11-45-91.pdf page 21
|
||||||
|
lac nrem
|
||||||
|
sna
|
||||||
|
jmp 2f
|
||||||
|
tad dm1
|
||||||
|
dac nrem
|
||||||
|
lac d1
|
||||||
|
2:
|
||||||
|
tad ndiv
|
||||||
|
cma
|
||||||
|
dac c
|
||||||
|
lac o40
|
||||||
|
2:
|
||||||
|
dac i 9
|
||||||
|
isz c
|
||||||
|
jmp 2b
|
||||||
|
2:
|
||||||
|
isz nc
|
||||||
|
lac i 8
|
||||||
|
sad o40
|
||||||
|
skp
|
||||||
|
jmp i fill
|
||||||
|
dac i 9
|
||||||
|
jmp 2b
|
||||||
|
|
||||||
|
" more routines
|
||||||
|
topbot: 0
|
||||||
|
lac pl
|
||||||
|
sza
|
||||||
|
jmp 1f
|
||||||
|
dzm bl
|
||||||
|
jmp i topbot
|
||||||
|
1:
|
||||||
|
-11
|
||||||
|
tad pl
|
||||||
|
spa
|
||||||
|
jmp 1f
|
||||||
|
dac bl
|
||||||
|
cma
|
||||||
|
tad d1
|
||||||
|
tad nl
|
||||||
|
spa
|
||||||
|
jmp i topbot
|
||||||
|
lac bl
|
||||||
|
dac nl
|
||||||
|
jmp i topbot
|
||||||
|
1:
|
||||||
|
lac d55
|
||||||
|
dac bl
|
||||||
|
dac nl
|
||||||
|
tad d11
|
||||||
|
dac pl
|
||||||
|
jmp i topbot
|
||||||
|
|
||||||
|
undline: 0
|
||||||
|
dac ul
|
||||||
|
law rawchar-1
|
||||||
|
dac 8
|
||||||
|
law tchar-1
|
||||||
|
dac 9
|
||||||
|
1:
|
||||||
|
lac i 8
|
||||||
|
" ** 11-45-91.pdf page 22
|
||||||
|
dac i 9
|
||||||
|
sad o12
|
||||||
|
jmp 1f
|
||||||
|
sad o40
|
||||||
|
jmp 1b
|
||||||
|
lac o10
|
||||||
|
dac i 9
|
||||||
|
lac o137
|
||||||
|
jmp 1b
|
||||||
|
1:
|
||||||
|
law tchar-1
|
||||||
|
dac 8
|
||||||
|
law rawchar-1
|
||||||
|
dac 9
|
||||||
|
1:
|
||||||
|
lac i 8
|
||||||
|
dac i 9
|
||||||
|
sad o12
|
||||||
|
jmp i undline
|
||||||
|
jmp 1b
|
||||||
|
|
||||||
|
center: 0
|
||||||
|
dac ce
|
||||||
|
law rawchar-1
|
||||||
|
dac 8
|
||||||
|
law tchar-1
|
||||||
|
dac 9
|
||||||
|
dzm wne
|
||||||
|
1:
|
||||||
|
lac i 8
|
||||||
|
dac i 9
|
||||||
|
sad o12
|
||||||
|
jmp 1f
|
||||||
|
jms width
|
||||||
|
tad wne
|
||||||
|
dac wne
|
||||||
|
jmp 1b
|
||||||
|
1:
|
||||||
|
-1
|
||||||
|
tad wne
|
||||||
|
spa
|
||||||
|
jmp i center
|
||||||
|
cma
|
||||||
|
tad ll
|
||||||
|
tad in
|
||||||
|
lrss 1
|
||||||
|
cma
|
||||||
|
tad d1
|
||||||
|
sma
|
||||||
|
-1
|
||||||
|
dac c
|
||||||
|
law tchar-1
|
||||||
|
dac 8
|
||||||
|
law rawchar-1
|
||||||
|
dac 9
|
||||||
|
lac o40
|
||||||
|
1:
|
||||||
|
dac i 9
|
||||||
|
isz c
|
||||||
|
jmp 1b
|
||||||
|
" ** 11-45-91.pdf page 23
|
||||||
|
1:
|
||||||
|
lac i 8
|
||||||
|
dac i 9
|
||||||
|
sad o12
|
||||||
|
jmp i center
|
||||||
|
jmp 1b
|
||||||
|
|
||||||
|
width: 0
|
||||||
|
sad o10
|
||||||
|
jmp 1f
|
||||||
|
lac d1
|
||||||
|
jmp i width
|
||||||
|
1:
|
||||||
|
-1
|
||||||
|
jmp i width
|
||||||
|
|
||||||
|
eibufp: ibuf+64
|
||||||
|
ibufp: ibuf
|
||||||
|
eobufp: obuf+64
|
||||||
|
obufp: obuf
|
||||||
|
input: 0
|
||||||
|
output: 1
|
||||||
|
ls: 1
|
||||||
|
ce: 0
|
||||||
|
in: 0
|
||||||
|
un: 0
|
||||||
|
ul: 0
|
||||||
|
ma1: -5
|
||||||
|
bl: 55
|
||||||
|
ll: 50
|
||||||
|
nwd: 0
|
||||||
|
nl: 0
|
||||||
|
nc: 0
|
||||||
|
ne: 0
|
||||||
|
pl: 88
|
||||||
|
ad: -1
|
||||||
|
fi: -1
|
||||||
|
cc: .>
|
||||||
|
o12: 012
|
||||||
|
o40: 040
|
||||||
|
o177: 0177
|
||||||
|
o53: 053
|
||||||
|
om72: -072
|
||||||
|
o55: 055
|
||||||
|
o400000: 0400000
|
||||||
|
o10: 010
|
||||||
|
d11: 11
|
||||||
|
d55: 55
|
||||||
|
o137: 0137
|
||||||
|
d1: 1
|
||||||
|
d2: 2
|
||||||
|
d4: 4
|
||||||
|
dm4: -4
|
||||||
|
d0: 0
|
||||||
|
dm1: -1
|
||||||
|
c: .=.+1
|
||||||
|
nrem: .=.+1
|
||||||
|
ndiv: .=.+1
|
||||||
|
num: .=.+1
|
||||||
|
" ** 11-45-91.pdf page 24
|
||||||
|
any: .=.+1
|
||||||
|
ital: .=.+1
|
||||||
|
otal: .=.+1
|
||||||
|
sctal: .=.+1
|
||||||
|
sctalp: .=.+1
|
||||||
|
sign: .=.+1
|
||||||
|
wch: .=.+1
|
||||||
|
wne: .=.+1
|
||||||
|
word: .=.+300
|
||||||
|
char: .=.+300
|
||||||
|
tchar: .=.+300
|
||||||
|
rawchar: .=.+300
|
||||||
|
ibuf: .=.+64
|
||||||
|
obuf: .=.+64
|
||||||
+3
-1
@@ -654,9 +654,11 @@ sub eae {
|
|||||||
$PC++;
|
$PC++;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if ( $maskedinstr == 0660600 ) { # llss: long left shift, signed
|
if ( ($maskedinstr == 0660600) ||
|
||||||
|
($maskedinstr == 0661600) ) { # llss: long left shift, signed
|
||||||
# Set the link to be the AC sign bit
|
# Set the link to be the AC sign bit
|
||||||
$LINK= ($AC & SIGN) ? LINKMASK : 0;
|
$LINK= ($AC & SIGN) ? LINKMASK : 0;
|
||||||
|
$AC = 0 if ($maskedinstr & 01000); # PLB: ecla llss seen in adm,apr,bc,ds,sh
|
||||||
dprintf( "llss step %d\n", $step );
|
dprintf( "llss step %d\n", $step );
|
||||||
foreach my $i ( 1 .. $step ) {
|
foreach my $i ( 1 .. $step ) {
|
||||||
my $MQmsb = ( $MQ & SIGN ) ? 1 : 0;
|
my $MQmsb = ( $MQ & SIGN ) ? 1 : 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user