DataMuseum.dk

Presents historical artifacts from the history of:

DANOSI

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

See our Wiki for more about DANOSI

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦5dc288d6c⟧ TextFile

    Length: 5348 (0x14e4)
    Types: TextFile
    Names: »XROU.ENV«

Derivation

└─⟦623820077⟧ Bits:30010493 DVBS1.SW50070.rel.1.0-2 SW500700 MegaSwitch Development Toolset Rel 1.0 DISK 2/2
    └─⟦this⟧ »PAXENV\XROU.ENV« 

TextFile

xrouenv;

(**************************************************************)
(*                                                            *)
(*     external router environments                           *)
(*                                                            *)
(**************************************************************)


(***************************************************************

  date    init   changes
---------------------------------------------------------------
 810600  tsg/jli  first released version
 810630   tsg    k and autocon inserter in hlopen_type (2 bytes)
 810729   jli    ubd_cnt inserted in statexttype
 810918   tsg    facility mask type changed
 810922   tsg    hdlc connector statistics changed
 820618   jli    --------------------------------- meanqueue inserted
 820803   tsg    universal environment restructuring performed
 821104   tsg    new packet header
 821216   tsg    new operation: read own address
881117   kgj    datagram header format 4 defined
881117   kgj    datagram header format 2, short format, deleted
-----------------------------------------------------------------------
890119   kgj    phead1 changed for new lineprotocol, rph1 unchanged
901124   bb     corrections for mega portability

(**********************************************************************)
(*                                                                    *)
(* 910920 vr  1.2 Definition of rout_datagram_address, rout_addres    *)
(*                and rout_head included.                             *)
(*                                                                    *)
(**********************************************************************)


const


(* user interface *)
(*----------------*)

(* u1 values *)

connect_ext    = 1*4+0;     (* connect extension *)
disconnect_ext = 2*4+0;     (* disconnect extension *)
reset          = 3*4+0;     (* reset *)
read_addr      = 4*4+0;     (* read own address *)
trm_packet     = 0*4+2;     (* transmit packet *)
dir_transm     = 1*4+2;     (* directed transmit *)
rec_packet     = 0*4+1;     (* receive packet *)
get_packet     = 1*4+1;     (* get packet     *)
sense_ready    = 2*4+1;     (* sense ready    *)

(* special router u2 values (results) *)

conn_unkn=6;          (* connector number unknown              *)


(*  packet parameters     *)

                 (* packet formats *)

dg_form1=2;      (* format 1  *)
dg_form3=128;    (* format 3  *)
dg_form4=8;      (* format4 - extended format1 used by local conn *)

                  (* packet types                 *)

ext_user_p=1;     (* external user packet       *)

(* packet states *)

st_notrmreso=1;     (* transmission closed caused by no resources *)
st_extunkn=5;       (* extension dst unknown                      *)
st_norecreso=6;     (* no receive resources                       *)
st_congestion=7;    (* congestion in the network                  *)
st_ltexceed=8;      (* lifetime exceeded                          *)
st_lineerror=9;     (* line error                                 *)
st_fpatherr=10;     (* fixed path error                           *)
st_mirrored=11;     (* mirrored                                   *)

(* facility mask bits definitions *)

fac_rej=      #h8000;
fac_rejlt=    #h4000;
fac_timelt=   #h2000;
fac_linklt=   #h1000;
fac_hrej=     #h0800;
fac_bcast=    #h0400;
fac_mirror=   #h0080;
fac_drop=     #h0040;
fac_spath=    #h0020;
fac_fpath=    #h0010;
fac_trace=    #h0001;

fac_mask_0=   0;

(* lengths of fields in packet *)

trhead_lgt=8;        (* trailer head length in bytes *)
trrec_lgt=4;         (* trailer record length in bytes *)
phead1_lgt=22;       (* packet head format 1 length in bytes *)


type

rparamtype=record
rparam1,rparam2,rparam3,rparam4: integer;
end;

ROUT_datagram_address = record
  net, reg, node: byte;
end;

ROUT_address = record
  dg : ROUT_datagram_address;
  ext: integer;
end;

ROUT_head = record
  format, priority, typ: byte;
  dst_address: ROUT_address;
$IF target <> RC5000
  exp_dist: integer;
$ENDIF
  rem_detours, crc_x_level, state: byte;
  org_address: ROUT_address;
$IF target <> RC5000
  crc_field, top_of_data: integer;
$ELSE
  top_of_data: int16;
$ENDIF
end;

routptype=record
drvbuf: drvbuftype;
rparam: rparamtype;
end;

phead1 = record
 format, priority,
 typ, net_dst,
 reg_dst, node_dst: byte;
 ext_dst: integer;
$if target <> rc5000
 exp_dist: integer;
$endif
 rem_detours, crc_x_level,   
 state, net_org, 
 reg_org, node_org: byte;
 ext_org: integer;
$if target <> rc5000
 crc_field,
$endif
$if target <> rc5000
 top_of_data: integer;
$else
 top_of_data: int16;
$endif
end;
 
rph = record
 drvbuf: drvbuftype;
 rparams: rparamtype;
 head: phead1;
end;
 
const
 
crc_bit = #b11000000;
not_crc_bit = #b00111111;
crc_factor = 64;
 
type
 


old_phead1= record
format,priority,
typ,net_dst,
reg_dst,node_dst: byte;
ext_dst:          integer;
exp_dist:         integer;
rem_detours,ffu:  byte;
state,net_org,
reg_org,node_org: byte;
ext_org:          integer;
fac:              integer;
top_of_data:      integer;
end;

rph1=record
drvbuf: drvbuftype;
rparams: rparamtype;
head: old_phead1;
end;


tr_head_type = record
timelimit: integer;
linklimit: integer;
top_of_trailer: integer;
next_record: integer;
end;

tr_record_type = record
reg,
node: byte;
time: integer;
end;
.