Что-то типа такого:
Код:
procedure L01000;
var DEVSPC: array [0..38] of integer;
DEFEXT: array [1..4] of integer;
I: integer;
begin
for I:=1 to 4 do
DEFEXT[I]:=0;
{$C
MOV SP, R2
ADD #DEVSPC, R2
MOV SP, R3
ADD #DEFEXT, R3
MOV #^ROBJ, @R3
MOV #^RMAC, 2(R3)
.MCALL .RCTRLO
.RCTRLO
MOV #^O1000,@#^O46
MOV SP, R1
.MCALL .CSIGEN
1$: .CSIGEN R2,R3,#0
MOV R1,SP
BCS 1$
}
for I:=0 to 15 do
VAR00[I]:=CHST00;
end;
procedure L01304(var RECIO: RECF1012; CHN: integer; CHS: CHSTATE);
begin
if VAR00[CHN]<>CHST00 then
else
with RECIO do
begin
RF04:=CHN;
RF02:=0;
RF02:=0;
if CHS = CHST01 then
begin
RF06:=-1;
RF1010:=512;
end
else
if CHS = CHST02 then
begin
RF06:=0;
RF1010:=1;
end;
VAR00[CHN]:=CHS;
end;
end;