DataMuseum.dk

Presents historical artifacts from the history of:

RC4000/8000/9000

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RC4000/8000/9000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦f79cd4858⟧ TextFile

    Length: 2304 (0x900)
    Types: TextFile
    Names: »mirrorjob«

Derivation

└─⟦a41ae585a⟧ Bits:30001842 SW-save af projekt 1000, Alarm-system
    └─⟦72244f0ef⟧ 
        └─⟦this⟧ »mirrorjob« 

TextFile

job jg 5 200 time 11 0 area 10 size 100000
(source=copy 25.1
mirrorlst= set 1 disc1
mirrorerr=set 1 disc1
mirrorlst= indent source mark lc
listc= cross mirrorlst
o mirrorerr
head 1
message mirror program
pascal80 spacing.3000 codesize.3000 evaenv alarmenv paxenv feaosenv source
o c
lookup pass6code
if ok.yes
(mirrorbin=set 1 disc1
mirrorbin=move pass6code
scope user mirrorbin
)
mirrorlst=copy listc mirrorerr
scope user mirrorlst
scope user mirrorerr
finis output.no
)

process str_mirror(
op_sem : sempointer;
var main_sem : !ts_pointer;
var stream_sem : !sempointer;
rec_stream,
xmit_stream : byte);
  
const
version = "vers  1.01 /";
stream_read = 3;
stream_write= 4;
type
str_buf = record
          fi, la, ne : integer;
          fix : alarmlabel;
          data : array(1..256) of byte;
          end;
var
msg : reference;
opzone : zone;
trans_pool : pool 1 of str_buf;
 
procedure send_read_stream;
begin
lock msg as buf : str_buf do
with msg^, buf do
begin
u1:= read_stream;
u2:= 0;
u3:= rec_stream;
u4:= stream_read;
fi:= 6;
la:= 239;
ne:= 6;
end;
signal( msg, stream_sem^ );
end;
 
procedure send_write_stream;
begin
lock msg as buf : str_buf do
with msg^, buf do
begin
u1:= write_stream;
u3:= xmit_stream;
u4:= stream_write;
end;
signal( msg, stream_sem^ );
end;
 
begin
testopen ( opzone, own.incname, op_sem );
testout  ( opzone, version, fe_env_version );
alloc ( msg, trans_pool, main_sem.s^ );
send_read_stream;
  
repeat
wait( msg, main_sem.w^ );
if msg^.u4 = stream_read then
send_write_stream else
send_read_stream;
until false
end.
\f


▶EOF◀