Added my pass at hand-OCRing the s1-s9 kernel source.
This commit is contained in:
@@ -0,0 +1,341 @@
|
||||
" s4
|
||||
|
||||
alloc: 0
|
||||
-1
|
||||
tad s.nfblks
|
||||
spa
|
||||
jmp 1f
|
||||
dac s.nflblks
|
||||
tad fblksp
|
||||
jms laci
|
||||
dac 9f+t
|
||||
jms copyz; dskbuf; 64
|
||||
lac 9f+t
|
||||
jms dskwr
|
||||
dzm .savblk
|
||||
lac 9f+t
|
||||
jmp alloc i
|
||||
1:
|
||||
lac s.nxfblk
|
||||
sna
|
||||
jms halt " OUT OF DISK
|
||||
dac s.fblks
|
||||
jms dskrd
|
||||
lac dskbuf
|
||||
dac s.nxfblk
|
||||
jms copy; dskbuf+1; s.fblks+1; 9
|
||||
lac d10
|
||||
dac s.nflblks
|
||||
jmp alloc+1
|
||||
|
||||
free: 0
|
||||
lmq
|
||||
lac s.nflblks
|
||||
sad d10
|
||||
jmp 1f
|
||||
tad fblksp
|
||||
dac 9f+t
|
||||
lacq
|
||||
dac 9f+t i
|
||||
dzm .savblk
|
||||
isz s.nfblks
|
||||
jmp free i
|
||||
1:
|
||||
lac s.nxfblk
|
||||
dac dskbuf
|
||||
jms copy; s.fblks+1; dskbuf+1; 9
|
||||
lacq
|
||||
dac s.nxfblk
|
||||
jms dskwr
|
||||
dzm .savblk
|
||||
lac d1
|
||||
dac s.nfblks
|
||||
jmp free i
|
||||
t = t+1
|
||||
|
||||
laci: 0
|
||||
and o17777
|
||||
tad o200000
|
||||
dac .+1
|
||||
lac ..
|
||||
jmp laci i
|
||||
betwen: 0
|
||||
lmq cmq
|
||||
lac betwen i
|
||||
dac 9f+t
|
||||
isz betwen
|
||||
lacq
|
||||
tad 9f+t i
|
||||
sma
|
||||
jmp 1f
|
||||
lac betwen i
|
||||
dac 9f+t
|
||||
isz betwen
|
||||
lacq
|
||||
tad 9f+t i
|
||||
cma
|
||||
spa sna
|
||||
1:
|
||||
isz betwen
|
||||
lacq
|
||||
cma
|
||||
jmp betwen i
|
||||
|
||||
copy: 0
|
||||
-1
|
||||
tad copy i
|
||||
dac 8
|
||||
isz copy
|
||||
-1
|
||||
tad copy i
|
||||
dac 9
|
||||
isz copy
|
||||
-1
|
||||
tad copy i
|
||||
cma
|
||||
dac 9f+t
|
||||
isz copy
|
||||
1:
|
||||
lac 8 i
|
||||
dac 9 i
|
||||
isz 9f+t
|
||||
jmp 1b
|
||||
jmp copy i
|
||||
|
||||
copyz: 0
|
||||
-1
|
||||
tad copyz i " -> xct
|
||||
dac 8
|
||||
isz copyz
|
||||
-1 " -> xct
|
||||
tad copyz i
|
||||
cma
|
||||
dac 9f+t
|
||||
isz copyz
|
||||
1:
|
||||
dzm 8 i
|
||||
isz 9f+t
|
||||
jmp 1b
|
||||
jmp copyz i
|
||||
t = t+1
|
||||
|
||||
putchar: 0
|
||||
dac 9f+t
|
||||
cla
|
||||
jms takeq
|
||||
jmp putchar i
|
||||
tad o40001
|
||||
dac .+4
|
||||
lac 9f+t
|
||||
jms putq
|
||||
lac char
|
||||
dac q2+1 ..
|
||||
isz putchar
|
||||
jmp putchar i
|
||||
t = t+1
|
||||
|
||||
getchar: 0
|
||||
jms takeq
|
||||
jmp i getchar
|
||||
tad o200001
|
||||
dac .+3
|
||||
cla
|
||||
jms putq
|
||||
lac q2+1 ..
|
||||
isz getchar
|
||||
jmp i getchar
|
||||
|
||||
takeq: 0
|
||||
rcl
|
||||
tad lacq1
|
||||
dac .+7
|
||||
tad o640000
|
||||
dac .+17
|
||||
tad d1
|
||||
dac .+14
|
||||
tad o500000
|
||||
dac .+5
|
||||
lac q1 ..
|
||||
sna
|
||||
jmp takeq i
|
||||
dac lnkaddr
|
||||
sad q1+1 ..
|
||||
jmp .+5
|
||||
tad o200000
|
||||
dac .+1
|
||||
lac q2 ..
|
||||
jmp .+3
|
||||
cla
|
||||
dac q1+1 ..
|
||||
dac q1 ..
|
||||
isz takeq
|
||||
lac lnkaddr
|
||||
jmp i takeq
|
||||
|
||||
putq: 0
|
||||
rcl
|
||||
tad dacq1
|
||||
dac .+14
|
||||
tad d1
|
||||
dac .+13
|
||||
tad o140000
|
||||
dac .+1
|
||||
lac q1+1 ..
|
||||
sna
|
||||
jmp .+6
|
||||
tad o40000
|
||||
dac .+2
|
||||
lac lnkaddr
|
||||
dac q2 ..
|
||||
jmp .+3
|
||||
lac lnkaddr
|
||||
dac q1 ..
|
||||
dac q1+1 ..
|
||||
jmp putq i
|
||||
|
||||
srcdbs: 0
|
||||
dac 9f+t+2 " lmq
|
||||
-ndskbs
|
||||
dac 9f+t
|
||||
law dskbs " -1 dac 8
|
||||
dac 9f+t+1 " lacq
|
||||
1:
|
||||
lac 9f+t+2
|
||||
sad 9f+t+1 i " 8i
|
||||
jmp srcdbs i
|
||||
law ?? " ???
|
||||
tad 9f+t+1
|
||||
dac 9f+t+1 " isz 8
|
||||
isz 9f+t
|
||||
jmp 1b
|
||||
isz srcdbs
|
||||
jmp srcdbs i
|
||||
|
||||
collapse:
|
||||
cla
|
||||
jms srcdbs
|
||||
jmp 1f
|
||||
law dskbs
|
||||
dac 9f+t+1 " 8
|
||||
1:
|
||||
lac 9f+t+1 " 8
|
||||
dac 0f+1
|
||||
tad d05 " ???
|
||||
dac 0f
|
||||
cma
|
||||
tad d1
|
||||
tad edskbsp
|
||||
and 017777
|
||||
sna
|
||||
jmp 0f+3
|
||||
dac 0f+2
|
||||
jms copy; 0;..;..;..
|
||||
-65
|
||||
tad edskbsp
|
||||
dac 9f+t
|
||||
tad d1
|
||||
dac 0f
|
||||
lac dskaddr
|
||||
dac 9f+t i
|
||||
jms copy; dskbuf; 0;..; 64
|
||||
jmp collapse i
|
||||
|
||||
diskrd: 0
|
||||
jms betwen; d2; d7999
|
||||
jms halt
|
||||
sad dskaddr
|
||||
jmp dskrd i
|
||||
dac dskaddr
|
||||
jms srcdbs
|
||||
jmp 1f
|
||||
lac dskaddr
|
||||
jms dskio; 06000
|
||||
jmp 2f
|
||||
1:
|
||||
dzm 9f+t=1 i
|
||||
law 1
|
||||
tad 9f+t+1
|
||||
dac .+2
|
||||
jms copy; ..; dskbuf; 64
|
||||
2:
|
||||
jms collapse
|
||||
jmp diskrd i
|
||||
|
||||
diskwr: 0
|
||||
jms betwen; d2; d7999
|
||||
jms halt
|
||||
jms dskio; 07000
|
||||
lac dskadr
|
||||
jms srcdbs
|
||||
dzm 9f+t+1 i
|
||||
jms collapse
|
||||
jmp dskwr i
|
||||
t = t+3
|
||||
|
||||
dskio: 0
|
||||
dac dskaddr
|
||||
cll; idiv; 80
|
||||
dac 9f+t
|
||||
lacq
|
||||
ldiv; 10
|
||||
dac 9f+t+1
|
||||
lls 22
|
||||
xor 9f+t+1
|
||||
als 8
|
||||
dac 9f+t+1
|
||||
lac 9f+t
|
||||
ldiv; 10
|
||||
dac 9f+t
|
||||
lls 22
|
||||
xor 9f+t
|
||||
xor 9f+t+1
|
||||
xor o200000
|
||||
dac 9f+t
|
||||
jms dsktrans; -64; dskbuf; 9f+t; dskio
|
||||
isz dskio
|
||||
jmp dskio i
|
||||
t = t+1
|
||||
|
||||
dsktrans: 0
|
||||
-10
|
||||
dac 9f+t
|
||||
1:
|
||||
-1
|
||||
tad dsktrans
|
||||
dac 12
|
||||
dscs
|
||||
lac 12 i
|
||||
dslw
|
||||
lac 12 i
|
||||
dslm
|
||||
lac 12 i
|
||||
jms laci
|
||||
dsld
|
||||
dzm .dskb
|
||||
lac 12 i
|
||||
jms laci
|
||||
jms laci
|
||||
dsls
|
||||
lac .dskb
|
||||
sna
|
||||
jmp .-2
|
||||
lac .dske
|
||||
sma
|
||||
jmp 12 i
|
||||
isz 9f+t
|
||||
jmp 1b
|
||||
jms halt " 10 disk errors
|
||||
t = t+1
|
||||
|
||||
halt: 0
|
||||
isz 9f+t
|
||||
jmp .-1
|
||||
iof
|
||||
hlt
|
||||
jms copy; lw; 4096; 4096
|
||||
hlt; jmp .-1
|
||||
t = t+1
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user