|
|
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: 2304 (0x900)
Types: TextFile
Names: »chngentrptx «
└─⟦01e83a425⟧ Bits:30008166 Bånd med SW8010 og SW8500 source code
└─⟦75ff9bef3⟧
└─⟦this⟧ »chngentrptx «
; chng_entr_pr
; ************
if listing.yes
char 10 12 10
chng_entr_pr = set 1 0
chng_entr_pr = algol
external integer procedure changeentryproc(name, tail);
_______________________________________________________
long array name;
integer array tail;
<*
changeentryproc (return integer) 0 ok
_ 1 change kind impossible
_ 2 cat i/o error,
_ doc. not mounted or not ready
_ 3 name not found
_ 4 name protected
_ 5 name in use
_ 6 name format illegal
_ 7 catalog inconsistent
_ 8 change bs device impossible
_ 9 claims exceeded
name (call, long array) contains the entry name
tail (call, integer array) contains new entry tail
*>
begin integer i;
integer array ia(1:10);
zone zhelp(1, 1, stderror);
i:=1; open(zhelp, 0, string name(increase(i)), 0);
i:=monitor(42<*lookup*>, zhelp, 0, ia);
if i<>0 then
begin changeentryproc:=i; goto exit_changeentryproc end;
if tail(1)<0 or ia(1)<0 then
begin
if tail(1)>=0 or ia(1)>=0 then
begin changeentryproc:=1; goto exit_changeentryproc end;
goto change
end;
if tail(2)=0 or tail(2)=1 then goto change;
if tail(3) extract 8=0 then tail(4):=tail(5):=0;
if tail(2)<>ia(2) or tail(3)<>ia(3) or
tail(4)<>ia(4) or tail(5)<>ia(5) then
begin changeentryproc:=8; goto exit_changeentryproc end;
change:
for i:=1 step 1 until 10 do ia(i):=tail(i); <*fielding possible*>
i:=monitor(44<*change*>, zhelp, 0, ia);
if i=6 then i:=9;
changeentryproc:=i;
exit_changeentryproc:
end changeentryproc;
end
if ok.no
mode warning.yes
if warning.yes
(mode 0.yes
message chng_entr_pr not ok
lookup chng_entr_pr)
▶EOF◀