|
DataMuseum.dkPresents historical artifacts from the history of: RC3500 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RC3500 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 3072 (0xc00) Types: TextFileVerbose Names: »tsevajob«
└─⟦a41ae585a⟧ Bits:30001842 SW-save af projekt 1000, Alarm-system └─⟦72244f0ef⟧ └─⟦this⟧ »tsevajob«
job jg 8 200 time 6 0 area 10 size 100000 (source= copy 25.1 tsevalst=set 1 disc1 tsevalst= indent source mark lc listc= cross tsevalst o errors head 1 message tseva program pascal80 spacing.3000 codesize.3000 evaenv alarmenv source o c lookup pass6code if ok.yes (tsevabin= set 1 disc1 tsevabin= move pass6code scope user tsevabin ) tsevalst= copy listc errors scope user tsevalst convert errors finis ) eva_env; const eva_size = 1024; op_size = 512; alarm_size = 4080; pax_size = 2000; procedure printnl; external; procedure printtext( name: alfa); external; procedure printhex( ok: integer); external; . \f process adam( var opsem: semaphore ); process eva(var sem_vector: !system_vector); const version = "vers 4.02 /"; name0 = ">eva "; name1 = "operator "; name2 = "alarm_opsys "; name3 = "pax_opsys "; var eva_sem : semaphore; msg : reference; sh : array(1..3) of shadow; i : integer; applsem : appl_vector; procedure init_proc ( index : integer; name : alfa; p : processrec; size,prio : integer); var ok : integer; begin i:= link( name, p.processref^); ok:= create( name, p, sh(index), size); if ok=0 then start( sh(index), prio) else begin printnl; printtext(name); printtext(" missing "); i:= i*16 + ok; printhex(i); printnl; end; end; process s1( var sv: system_vector); external; process s2( var sv: system_vector; var appl_sem: appl_vector); external; process s3( var sv: system_vector; var appl_sem: appl_vector); external; \f (* main program *) begin printnl; printtext(name0); printnl; printtext(version); printhex(al_env_version); printnl; init_proc( 1, name1, s1( sem_vector), op_size, minpriority); init_proc( 2, name2, s2( sem_vector, applsem), alarm_size, 0); init_proc( 3, name3, s3( sem_vector, applsem), pax_size, 0); repeat wait(msg,eva_sem); return(msg); until false end; (* eva *) var sem_vector : adamvector; s : semaphore; sh : shadow; ref1: reference; c : integer; begin sem_vector(adamsem) := ref(s); sem_vector(operatorsem) := ref(opsem); c := create("eva ", eva(sem_vector),sh,eva_size); start(sh,0); repeat wait(ref1,s); (* stop *) return(ref1); until false end. «eof»