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

⟦7884a9ed4⟧ TextFile

    Length: 1536 (0x600)
    Types: TextFile
    Names: »tdebugout«

Derivation

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

TextFile

process debugout(var output_sem : semaphore; pu,level : integer);
(***********************************************************************)
(*                                                                     *)
(*          debugout driver                                            *)
(*                                                                     *)
(***********************************************************************)
const
outputlevel_index = 1;
dataout_index = 8;

ok = 0;
timeout = 2;
mask = -1;
max_output_timeout = 5;

var
ch_msg : reference;
msg : reference;
result : integer;
data_out : integer;


begin
platoninit;  (* to be removed *)
if reservech(ch_msg,pu,level,mask) = 1 then
begin
writeram(outputlevel_index,level); (* init interrupt level *)

while true do
begin
wait(msg,output_sem);
data_out := msg^.u4;
own.timer := max_output_timeout;
channel ch_msg do
writeramclr(dataout_index,data_out);

if own.timer = 0 then
result := timeout
else
result := ok;
msg^.u2 := result;
return(msg);
end
end
end
.
▶EOF◀