|
|
DataMuseum.dkPresents historical artifacts from the history of: RC4000/8000/9000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RC4000/8000/9000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 3072 (0xc00)
Types: TextFile
Names: »kkfpret0«
└─⟦621cfb9a2⟧ Bits:30002817 RC8000 Dump tape fra HCØ. Detaljer om "HC8000" projekt.
└─⟦0364f57e3⟧
└─⟦20407c65c⟧ »kkmon0filer«
└─⟦this⟧
└─⟦667bb35d6⟧ Bits:30007480 RC8000 Dump tape fra HCØ.
└─⟦4334b4c0b⟧
└─⟦f781f2336⟧ »kkmon0filer«
└─⟦this⟧
kkfptxt1=edit fptext1
f
kkfptxt2=edit fptext2
l./beginsegment:connectoutput/,r/a40/a42/,l2
l2,r/ /a36:/,l1,r/ /a37:/
r/;/; a36 used as variable,
; a37 ... a37+(max key+1)*4-2 used
; as store to lookup-bs-claims
/
l./a40./,r/a40. /h10.+6/
l./a40./,r/a40. /h10.+6/
l./b8:/,d6,i/
; procedure move name(from,to);
b8: ; from addr=w1, to addr=w2
al. w2 b0. ; w2:=saved file descriptor
rl. w1 c9. ;
a41: rs. w3 b1. ; store(w3);
dl w0 x1+2 ;
ds w0 x2+4 ;
dl w0 x1+6 ;
ds w0 x2+8 ;
/
l./a8:/,l2,i/
ls w0 2 ; key:=key*4;
/
l./a9:/,r/a9:/ /,l-2,r/alw00 /ld w0 -100/,l1,i/
jl. a9. ;
a11: rl. w0 h10.+10 ;
rl w3 x2-8 ; w3:=slice length.curr device
sl. w0 (h10.+8) ; if min slice>max segm then
/,l1,r/rs/ds/,r/ /a9:/,r/0;/min slice;/
l./x2-36/,l-1,i/
ds. w2 a36. ; store(w1,w2);
/,l1,r/w3/w1/
r/;/;
/
d
d4,i/
al w1 x1+2 ; w1:=addr(own process name);
al. w2 a0.-2 ; w2:=addr(own process name area);
jl. w3 a41. ; move name(from monitor,to own process);
rl. w1 a36. ; w1:=addr(slice table head.curr device);
al w1 x1-18 ; w1:=addr(device name);
al. w2 a0.+8 ; w2:=addr(device name store);
jl. w3 a41. ; move name(from monitor,to own process);
al w2 x2+2 ;
al. w3 a0. ; w3:=addr(own process);
al. w1 a37. ; w1:=addr(bs-claim-store);
jd 1<11+118 ; lookup bs claims;
/,l2,r/x3;/x1;+key*4 ;/,l1,d5,i/
sn w0 0 ; if device exist then
jl. a38. ; start search
al w0 0 ; else
jl. a42. ; goto next device
a10: sl w0 (x3+2) ; if min slice>=curr.slice then
a38: rl w0 x3+2 ; min slice:=curr.slice;
al w3 x3-4 ; key:=key-1;
sl w3 x1 ; if key>0 then
jl. a10. ; goto a10;
/
l./h10.+10/,d,i/
a42: dl. w2 a36. ; restore(w1,w2);
/,l1,d,r/;m/; :=m/,r/ *slicelength//
l./rlw0x2-8/,l1,r/a40. /h10.+6/,l3,d8
l./a15:/,r/bl.w0/al w0/,r/+e15./ /,r/callconnect2:/w0:=kind>1;/
l./a18:/,l1,r/ /a39:/
l./h.;ac/,d12
l./e0:/,l2,i/
bl. w3 x3+e15. ; w3:=action address;
/
l./b4:/,i/
h. ; action teable
e15: ; action ; kind action
e26 ; ip check and init
e34 ; clock convention error
e25 ; bs check and reserve
e35 ; drum not allowed
e26 ; tw check and init
e34 ; tr convention error
e25 ; tp check and reserve
e25 ; lp check and reserve
e34 ; cr convention error
e43 ; mt reserve tape
e25 ; pl check and reserve
w.
/
f
kkfptxt3=edit fptext3
f
(kkfp0=slang kkfptxt1 kkfptxt2 kkfptxt3 insertproc
kkfp0)
scope user kkfp0
lookup kkfp0
▶EOF◀