mirror of
https://github.com/DoctorWkt/pdp7-unix.git
synced 2026-01-25 11:47:35 +00:00
292 lines
3.1 KiB
ArmAsm
292 lines
3.1 KiB
ArmAsm
" init
|
|
|
|
-1
|
|
sys intrp
|
|
jms init1
|
|
jms init2
|
|
1:
|
|
sys rmes
|
|
sad pid1
|
|
jmp 1f
|
|
sad pid2
|
|
jms init2
|
|
jmp 1
|
|
1:
|
|
jms init1
|
|
jmp 1
|
|
|
|
init1: 0
|
|
sys fork
|
|
jmp 1f
|
|
sys open; ttyin; 0
|
|
sys open; ttyout; 1
|
|
jmp login
|
|
1:
|
|
dac pid1
|
|
jmp init1 i
|
|
|
|
init2: 0
|
|
sys fork
|
|
jmp 1f
|
|
sys open; keybd; 0
|
|
sys open; displ; 1
|
|
jmp login
|
|
1:
|
|
dac pid2
|
|
jmp init2 i
|
|
|
|
login:
|
|
-1
|
|
sys intrp
|
|
sys open; password; 0
|
|
lac d1
|
|
sys write; m1; m1s
|
|
jms rline
|
|
lac ebufp
|
|
dac tal
|
|
1:
|
|
jms gline
|
|
law ibuf-1
|
|
dac 8
|
|
law obuf-1
|
|
dac 9
|
|
2:
|
|
lac 8 i
|
|
sac o12
|
|
lac o72
|
|
sad 9 i
|
|
skp
|
|
jmp 1b
|
|
sad o72
|
|
skp
|
|
jmp 2b
|
|
lac 9 i
|
|
sad o72
|
|
jmp 1f
|
|
-1
|
|
tad 9
|
|
dac 9
|
|
lac d1
|
|
sys write; m3; m3s
|
|
jms rline
|
|
law ibuf-1
|
|
dac 8
|
|
2:
|
|
lac 8 i
|
|
sad o12
|
|
lac o72
|
|
sad 9 i
|
|
skp
|
|
jmp error
|
|
sad o72
|
|
skp
|
|
jmp 2b
|
|
1:
|
|
dzm nchar
|
|
law dir-1
|
|
dac 8
|
|
1:
|
|
lac 9 i
|
|
sad o72
|
|
jmp 1f
|
|
dac char
|
|
lac nchar
|
|
sza
|
|
jmp 2f
|
|
lac char
|
|
alss 9
|
|
xor o40
|
|
dac 8 i
|
|
dac nchar
|
|
jmp 1b
|
|
2:
|
|
lac 8
|
|
dac nchar
|
|
lac nchar i
|
|
and o777000
|
|
xor char
|
|
dac nchar i
|
|
dzm nchar
|
|
jmp 1b
|
|
1:
|
|
dzm nchar
|
|
1:
|
|
lac 9 i
|
|
sad o12
|
|
jmp 2f
|
|
tad om60
|
|
lmq
|
|
lac nchar
|
|
cll; als 3
|
|
omq
|
|
dac nchar
|
|
jmp 1b
|
|
2:
|
|
lac nchar
|
|
sys setuid
|
|
sys chdir; dd
|
|
sys chdir; dir
|
|
|
|
lac d2
|
|
sys close
|
|
sys open; sh; 0
|
|
sma
|
|
jmp 1f
|
|
sys link; system; sh; sh
|
|
spa
|
|
jmp error
|
|
sys open; sh; 0
|
|
spa
|
|
jmp error
|
|
sys unlink; sh
|
|
1:
|
|
law 017700
|
|
dac 9
|
|
law boot-1
|
|
dac 8
|
|
1:
|
|
lac 8 i
|
|
dac 9 i
|
|
sza
|
|
jmp 1b
|
|
jmp 017701
|
|
|
|
boot:
|
|
lac d2
|
|
lmq
|
|
sys read; 4096; 07700
|
|
lacq
|
|
sys close
|
|
jmp 4096
|
|
0
|
|
|
|
rline: 0
|
|
law ibuf-1
|
|
dac 8
|
|
1:
|
|
cla
|
|
sys read; char; 1
|
|
lac char
|
|
lrss 9
|
|
sad o100
|
|
jmp rline+1
|
|
sad o43
|
|
jmp 2f
|
|
dac 8 i
|
|
sad o12
|
|
jmp rline i
|
|
jmp 1b
|
|
2:
|
|
law ibuf-1
|
|
sad 8
|
|
jmp 1b
|
|
-1
|
|
tad 8
|
|
dac 8
|
|
jmp 1b
|
|
|
|
gline: 0
|
|
law obuf-1
|
|
dac 8
|
|
1:
|
|
jms gchar
|
|
dac 8 i
|
|
sad o12
|
|
jmp gline i
|
|
jmp 1b
|
|
|
|
gchar: 0
|
|
lac tal
|
|
sad ebufp
|
|
jmp 1f
|
|
ral
|
|
lac tal i
|
|
snl
|
|
lrss 9
|
|
and o777
|
|
lmq
|
|
lac tal
|
|
add o400000
|
|
dac tal
|
|
lacq
|
|
sna
|
|
jmp gchar+1
|
|
jmp gchar i
|
|
1:
|
|
lac bufp
|
|
dac tal
|
|
1:
|
|
dzm tal i
|
|
isz tal
|
|
lac tal
|
|
sad ebufp
|
|
skp
|
|
jmp 1b
|
|
lac bufp
|
|
dac tal
|
|
lac d2
|
|
sys tead; buf; 64
|
|
sna
|
|
jmp error
|
|
jmp gchar+1
|
|
|
|
error:
|
|
lac d1
|
|
sys write; m2; m2s
|
|
lac d1
|
|
sys smes
|
|
sys exit
|
|
|
|
m1:
|
|
012; <lo>;<gi>;<n;<:;<
|
|
m1s = .-m1
|
|
m2:
|
|
<?; 012
|
|
m2s = .-m2
|
|
m3:
|
|
<pa>;<ss>;<wo>;<rd>;<: 040
|
|
m3s = .-m3
|
|
dd:
|
|
<dd>;040040;040040;040040
|
|
dir:
|
|
040040;040040;040040;040040
|
|
|
|
ttyin:
|
|
<tt>;<yi>;<n 040;040040
|
|
ttyout:
|
|
<tt>;<yo>;<ut>; 040040
|
|
keybd:
|
|
<ke>;<yb>;<oa>;<rd>
|
|
displ:
|
|
<di>;<sp>;<la>;<y 040
|
|
sh:
|
|
<sh>; 040040;040040;040040
|
|
system:
|
|
<sy>;<st>;<em>; 040040
|
|
password:
|
|
<pa>;<ss>;<wo>;<rd>
|
|
|
|
d1: 1
|
|
o43: 043
|
|
o100: 0100
|
|
o400000; 0400000
|
|
d2: 2
|
|
o12: 012
|
|
om60: -060
|
|
d3: 3
|
|
ebufp: buf+64
|
|
bufp: buf
|
|
o777: 0777
|
|
o777000: 0777000
|
|
o40: 040
|
|
o72: 072
|
|
|
|
ibuf: .=.+100
|
|
obuf: .=.+100
|
|
tal: .=.+1
|
|
buf: .=.+64
|
|
char: .=.+1
|
|
nchar: .=.+1
|
|
pid1: .=.+1
|
|
pid2: .=.+1
|