DataMuseum.dk

Presents historical artifacts from the history of:

RC3500

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

See our Wiki for more about RC3500

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦7b810f885⟧ TextFileVerbose

    Length: 6144 (0x1800)
    Types: TextFileVerbose
    Names: »netenvir2«

Derivation

└─⟦2c55ea56f⟧ Bits:30001844 SW-save af projekt 1000, Alarm-system
    └─⟦6b41451d2⟧ 
        └─⟦this⟧ »netenvir2« 

TextFileVerbose

<* lockheed network environment *>
net_definitions;

<* trimming params for network *>

const
min_xmit = 0;  <* minimum value for transmission bytes *>
no_of_levels = 5; <* max nuber of consecutive network nodes between term and 8000 *>
size_request =  80; <* max number of chars in request *>
size_reply   =2000; <* max number of chars in reply *>


<* global constants *>

const
doomsday = false;  <* useful in: repeat ... until doomsday *>


<* computer dependant parameters *>
const
no_of_fpa = 1;
first_devno_fpa = 8;

no_of_hdlc = 2;
first_devno_hdlc = 16;

no_of_gci = 1;
first_devno_gci = 10;

no_of_cons = 2;

no_of_ontel = 4;
first_devno_ontel = 12;

no_of_bbm = 0;
first_devno_bbm = 0-0-0;

no_of_server = 1;


<* program dependant parameters *>
const
fpa_name = 'fpadriver';
fpa_size = 512;
fpa_prio = 0;
inbufs_fpa = 2;
outbufs_fpa = 5;

hdlc_name = 'hdlcdriver';
hdlc_size = 512;
hdlc_prio = 0;
inbufs_hdlc = 3;
outbufs_hdlc = 5;

gci_name = 'gcidriver';
gci_size = 512;
gci_prio = 0;
inbufs_gci = 2;
outbufs_gci = 2;

cons_name = 'consdriver';
cons_size = 512;
cons_prio = -3;
inbufs_cons = 1;
outbufs_cons = 0;

ontel_name = 'onteldriver';
ontel_size = 512;
ontel_prio = 0;
inbufs_ontel = 1;
outbufs_ontel = 0;

bbm_name = 'bbmdriver';
bbm_size = 128;
bbm_prio = -1;
inbufs_bbm = 2;
outbufs_bbm = 1;

server_name = 'server';
server_size = 512;
server_prio = -1;
inbufs_server = 1;
outbufs_server = 5;

<* summarization of trimming-parameters *>
type
prockinds = (fpa_kind, hdlc_kind, gci_kind, cons_kind, ontel_kind, bbm_kind, server_kind);

const
max_process = no_of_fpa*2 + no_of_hdlc*2 + no_of_gci*2 + no_of_cons + no_of_ontel + no_of_bbm + no_of_server;
max_ports   = no_of_fpa + no_of_hdlc + no_of_gci + no_of_cons + no_of_ontel + no_of_bbm + no_of_server;
max_port    = no_of_fpa + no_of_hdlc + no_of_gci + no_of_bbm + no_of_server;
max_sem     = no_of_fpa*2 + no_of_hdlc*2 + no_of_gci*2 + no_of_cons*2 + no_of_ontel*2 + no_of_bbm + no_of_server*2;
max_status  = max_process;  <* may also be smaller *>
max_largepool = inbufs_fpa*no_of_fpa + inbufs_hdlc*no_of_hdlc + inbufs_gci*no_of_gci + inbufs_bbm*no_of_bbm + inbufs_server*no_of_server;
max_smallpool = inbufs_cons*no_of_cons + inbufs_ontel*no_of_ontel;

type
ports_range = 1 .. max_ports;
port_range  = 1 .. max_port;



<* definition of message types ( = u1 ) *>
const
input_msg = 1;
output_msg = 2;


<* definition of results ( = u2 ) *>
const
result_ok     = 0;
result_skip   = 1;
result_error  = 2;
result_answer = 7;


<* definition of buffer kinds ( = u4 ) *>
const
rec_answer  = 0;
xmit_answer = 1;
empty_buf   = 2;
full_buf    = 3;

<* definition of routing modes *>
const
reply        = 1;
next_request = 2;
new_request  = 3;
inform       = 4;

<* definition of service kinds *>
const
serv_a = 1;
serv_b = 2;
serv_c = 3;
max_serv = 3;
das_search = serv_a;

const
max_dist = no_of_levels;
top_dist = max_dist + 1;

type
routing_modes = reply .. inform;
serv_range = 1 .. max_serv;
dist_range = 0 .. max_dist;


<* definition of routing description *>

const
addr_lower = 1;
addr_upper = addr_lower - 1 + 2 * no_of_levels;

type
addr_range = addr_lower .. addr_upper;

type
port_defs = array (addr_range) of byte;
const
size_port_defs = (addr_upper - addr_lower + 1) * 1;

type
net_header = record
routing_mode : byte;
service_kind : byte;
cur          : byte;  <* index of current port_def *>
addr         : port_defs;
?            : byte;  <* used for compatibility with opa-software *>
end;
const
size_net_header = 3 + size_port_defs + 1;

type
single_capability = array (serv_range, dist_range) of byte;
const
size_single_cap = max_serv * (max_dist + 1) * 1;


<* definition of databuf formats *>

type
stdpart = record
first : integer;
last  : integer;
next  : integer;
receiver : integer;
header: net_header;
end;
const
first_buffer = 8;
size_stdpart = first_buffer + size_net_header;

type
request_buffer = record
req_head : stdpart;
req_buf  : array (1..size_request) of char;
end;

type
reply_buffer = record
reply_head : stdpart;
reply_buf  : array (1..size_reply) of char;
end;

type
cap_buffer = record
cap_head : stdpart;
cap      : single_capability;
end;
const
size_cap_buffer = size_stdpart + size_single_cap;

<* definition of process-parameter types *>
type
proc_descrs = array (0..max_process) of
record
kind    : prockinds;
inc     : 0..max_process;  <* relative number within kind *>
sem     : 0..max_sem;      <* index within 'sems' *>
testval : integer;         <* testpattern, 0==no test *>
end;

sem_arr = array (0..max_sem) of semaphore;


<* general types *>
type
timetype = record
hours   : integer;
seconds : integer;
end;


<* general procedure declarations *>
procedure inword (var w: integer; var chm: reference); external;
procedure outword (w: integer; var chm: reference); external;
procedure controlclr (w: integer; var chm: reference); external;
procedure control    (w: integer; var chm: reference); external;
procedure sense (var status: integer; w: integer; var chm: reference); external;
procedure outwordclr (w: integer; var chm: reference); external;
function timedout: boolean; external;
<* override in/outwordblock by: in/outbyteblock *>
(*
procedure inwordblock =
inbyteblock (var n: integer; f,l: integer; var m,d: reference); external;
procedure outwordblock =
outbyteblock(var n: integer; f,l: integer; var m,d: reference); external;
*)

procedure return_empty (var msg: reference; ok: boolean); external;
procedure return_full  (var msg: reference; ok: boolean); external;
procedure outnl (var z: zone); external;
procedure outtime (var z: zone; t: timetype); external;
procedure print_msg (var z: zone; var msg: reference; text: alfa); external;

<* end netenvir *>
.
«eof»