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

⟦af485390e⟧ TextFile

    Length: 5376 (0x1500)
    Types: TextFile
    Names: »xncpenv«

Derivation

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

TextFile

xncpenv;

(***********************************************************************)
(*                                                                     *)
(*                  external ncp environment                           *)
(*                                                                     *)
(* description:                                                        *)
(* the xncpenv defines the most common used constants and types that   *)
(* all lcp's use. it should be used by all lcp modules.                *)
(*                                                                     *)
(*   date    init   changes                                            *)
(*  -----------------------------------------------------------------  *)
(*  810217   chh    first released version                             *)
(*  810408   chh    event and supervisor pool sizes inserted           *)
(*                                                                     *)
(***********************************************************************)


const

(*************************************)
(****   configuration constants   ****)
(*************************************)

time_lgt = 12;             (* digits in time in supervisor message *)
sp_head_lgt = 17;          (* length of supervisor head (bytes) *)
event_buf_size = 300;      (* no. of bytes in an event buffer *)
sup_buf_size = 300;        (* no. of bytes in a supervisor message buffer *)


(**********************************************)
(****   u1 values in messages to the ncp   ****)
(**********************************************)

connect_lcp = 4;
disconnect_lcp = 8;
wait_message = 12;         (* wait for a supervisor message *)
req_event_buf = 16;        (* get an event buffer, if any free *)
wait_event_buf = 20;       (* wait forever for an event buffer *)



(************************************************)
(****   u1 values in messages from the ncp   ****)
(************************************************)

sup_mess_buf = 12 + 3;     (* supervisor message buffer from the ncp *)
event_buf_req = 16 + 3;    (* event buffer, when no wait *)
event_buf_wait = 20 + 3;   (* event buffer, when waited forever *)


(************************************************)
(****    u2 values in answers from the ncp   ****)
(************************************************)

(*   see cnnetenv. these are used   *)


type

(*********************************)
(****   supervisor messages   ****)
(*********************************)

lcp_ident_type = packed record
i: bit;
id: 0..32767;
end;

req_ans_type = (req, ans);

mess_ev_type = (mess, event);

ncp_cntr_type = (no_ncp_cntr, ncp_cntr);

rep_func_type = (start_rep, stop_rep);

rej_func_type = (no_reject, reject);

stat_cntr_type = (no_reset_stat, reset_stat);

sp_type_type = packed record
req_ans: req_ans_type;
mess_ev: mess_ev_type;
ncp_control: ncp_cntr_type;
rep_func: rep_func_type;
rej_func: rej_func_type;
stat_cntr: stat_cntr_type;
?,?: bit;
end;

basic_type = (lcp_cntr,         (* lcp control operation *)
lcp_sense,        (* lcp sense operation *)
lcp_get_stat,     (* lcp get statistics operation *)
lcp_event);       (* lcp event operation *)

lcp_oper_type = packed record
modif: 0..63;
basic: basic_type;
end;

sp_status_bit = (sp_status_15,      (* module dependent status bit *)
sp_status_14,      (* module dependent status bit *)
sp_status_13,      (* module dependent status bit *)
sp_status_12,      (* module dependent status bit *)
sp_status_11,      (* module dependent status bit *)
sp_status_10,      (* module dependent status bit *)
sp_status_9,       (* module dependent status bit *)
rep_res_lack,      (* lack of repeat function resources *)
no_free_res,       (* no free resources available *)
dupl_func,         (* duplicate function *)
out_of_range,      (* out of range *)
illegal_state,     (* illegal state *)
data_error,        (* error found in supervisor data *)
lcp_unknown,       (* lcp with specified receiver_id not connected *)
ill_lcp_oper,      (* illegal lcp_oper *)
chain);            (* indicate chained supervisor messages *)

time_digit = 0..15;

sp_head_type = packed record
receiver_id: lcp_ident_type;
sender_id: lcp_ident_type;
seq_no: byte;
sp_type: sp_type_type;
lcp_oper: lcp_oper_type;
status: set of sp_status_bit;
time: packed array(1..time_lgt) of time_digit;
bytecount: integer;
end;


(**************************)
(****   lcp messages   ****)
(**************************)

lcp_conn_type = record     (* used in lcp connection *)
first,
last,
next: integer;
lcp_ident: lcp_ident_type;
end;

lcp_disc_type = lcp_conn_type;     (* used in lcp disconnection *)


(********************************************************************)
(*                                                                  *)
(*                  end of external ncp environment                 *)
(*                                                                  *)
(********************************************************************)


.
▶EOF◀