|
|
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: 1536 (0x600)
Types: TextFile
Names: »readparamtx«
└─⟦621cfb9a2⟧ Bits:30002817 RC8000 Dump tape fra HCØ. Detaljer om "HC8000" projekt.
└─⟦0364f57e3⟧
└─⟦80900d603⟧ »giprocfile«
└─⟦00964e8f7⟧ Bits:30007478 RC8000 Dump tape fra HCØ.
└─⟦b2ec5d50f⟧
└─⟦80900d603⟧ »giprocfile«
└─⟦this⟧
; read_param_tx * page 1 27 09 77, 11.35;
; read_param
; ************
if listing.yes
char 10 12 10
read_param=set 1
read_param=algol
external integer procedure read_param
_______________________________________
_ (a);
array a;
comment
the procedure reads the parameters in the FP command
activating the program.
read_param: kind of item stored in a
_ -1 <text>= (at first call and after wrap around)
_ 0 end_of_parameter_list
_ 1 <s><integer>
_ 2 <s><text>
_ 3 .<integer>
_ 4 .<text>
a: (return value, real array, length >=2).
an integer is floated into the first element of a, a text item
is assigned into a(1:2).
the parameter list is scanned by means of system(4, q, a).
at the end_of_parameter_list reading continues with the first
first parameter again. the program name is always skipped;
begin
own integer q;
integer i;
q := q + 1;
i := system(4, q, a);
if q<>1 or i <> (6 shift 12) + 10 then
begin comment not first nor = sign;
if i <> 0 then
read_param := (if i shift(-12)=8 then 2 else 0)
_ +(if i extract 12=10 then 2 else 1)
else
read_param := q := 0;
end not first nor =sign
else
begin comment first and = sign;
system(4, 0, a);
read_param := -1;
end first and = sign;
end read_param;
end
if warning.yes
(mode 0.yes
message read_param not ok
lookup read_param)
▶EOF◀