|
|
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: 4608 (0x1200)
Types: TextFile
Names: »uti27«
└─⟦00964e8f7⟧ Bits:30007478 RC8000 Dump tape fra HCØ.
└─⟦b2ec5d50f⟧
└─⟦f8e4b63af⟧ »trcfput«
└─⟦this⟧
\f
; rc 26.10.70 fp utility job page 1
; job copies current input over on a work area. when end medium
; is met current input is unstacked,stacked and the work area is
; connected as current input.
b. g3 w. ; insertproc block
d.
p.<:fpnames:>
l.
s. a5,b8,c3 w. ; program segment
k= h55
b0: 100,0,r.9 ; 100 segments , 9 tail words
b1: 0,r.4 ; name of work area
b2: 0,r.4 ; stack chain for current output
b3: 768 ; number of charecters on one segment
b4: 0 ; saved alarm
b5: <:*** job create area result = <0>:>
b6: <:*** job connect out result = <0>:>
b7: <:*** job change area result = <0>:>
b8: <:*** job connect in result = <0>:>
a0: g2=a0-b0 ; entry:
c. h57<2 ; if system 2 then
al. w1 b0. ; w1:= tail address;
al. w3 b1. ; w3:= name address;
jd 1<11+40 ; create area;
se w0 0 ; if w0<>0 then
jl. c0. ; goto area alarm;
al. w1 h21. ; w1:= add of current out;
al. w2 b2. ; w2:= stack chain address;
jl. w3 h29. ; stack zone;
al. w2 b1. ; w2:= add of name;
al w0 1<1+1 ; default: connect one segment on disc;
jl. w3 h28. ; connect output;
se w0 0 ; if w0<>0 then
jl. c1. ; goto connect out alarm;
al w0 0 ; w0:= 0;
a1: ; rep:
jl. w3 h25.-2 ; inchar from current in;
sn w2 25 ; if end medium then
jl. a2. ; goto finish;
jl. w3 h26.-2 ; outchar on current out;
ba. w0 1 ; w0:=w0+1;
jl. a1. ; goto rep;
a2: ; finish:
jl. w3 h34.-2 ; close up on current out;
al w3 0 ;
wd. w0 b3. ; w0:=( w3w0//768 ) + 1 ;
ba. w0 1 ;
rs. w0 b0. ; area length:= w0;
al. w1 b0. ; w1:= add of tail;
al. w3 b1. ; w3:=name address;
jd 1<11+44 ; change entry;
se w0 0 ; if w0<>0 then
jl. c2. ; goto change area alarm;
jl. w3 h79.-4 ; terminate current in;
jl. w3 h30.-4 ; unstack current in;
jl. w3 h29.-4 ; stack current in;
al. w2 b1. ; w2:= add of area name;
jl. w3 h27.-2 ; connect current in;
se w0 0 ; if w0<>0 then
jl. c3. ; goto connect in alarm;
al w2 1 ;
rs w2 x1+h2 ; give up(current in):=1; (i-bit)
\f
; rc 26.10.70 fp utility job page ...2...
; normaly w0 is zero on entry to this page but on alarm jumps
; to a c-name w0 containes the alarm cause to be printed;
c0: am b5-b6 ; area alarm:
c1: am b6-b7 ; connect out alarm:
c2: am b7-b8 ; change area alarm:
c3: al. w2 b8. ; connect in alarm:
rs. w2 b4. ; b4:=saved text add;
jl. w3 h79.-2 ; terminate current out;
al. w2 b2. ; w2:= stack chain;
jl. w3 h30. ; unstack zone;
sn w0 0 ; if alarm cause=0 then
jl. a4. ; goto normal exit;
rx. w0 b4. ; w0:=text add; b4:=alarm cause;
jl. w3 h31.-2 ; outtext on current output;
rl. w0 b4. ; w0:= alarm cause;
al. w3 a3. ;
jl. w3 h32.-2 ; out integer on current out;
a3: 1<23+32<12+4 ; layout
al w2 10 ;
jl. w3 h26.-2 ; write new line on current out;
am 1 ; ok:= false;
z.
a4: al w2 0 ; normal exit: ok:= true;
jl. w3 h7. ; goto end program;
a5: g3=a5-b0 ; g3:= length of code;
i.e. ; end of segment , names.
m.rc 07.02.74 fp utility, job
; tail part:
g0:g1: ; first and last tail;
1 ; one segment
0,r.4 ; doc.name
s2 ; date
0,0 ; file, block
h. 2,g2 ; program,entry
w.i. g3 ; length
d.
p.<:insertproc:>
l.
\f
▶EOF◀