|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 9216 (0x2400) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, generic, package Bloc, seg_03924a, seg_03932a, seg_039343
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦this⟧ └─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦this⟧
generic type Symbole is private; with function Equal (Left, Right : Symbole) return Boolean is <>; package Bloc is -- beau paquetage generique fabrique artisanalement ! type Liste (Type_Cont : Boolean) is private; type Pliste is private; function Nouveau_Pere return Boolean; function Nouveau_Bloc_Frere_Cadet return Boolean; function Nouveau_Bloc_Frere_Aine return Boolean; function Nouveau_Bloc_Fils return Boolean; function Va_Bloc_Fils return Boolean; function Va_Bloc_Pere return Boolean; function Va_Bloc_Frere_Aine return Boolean; function Va_Bloc_Frere_Cadet return Boolean; function Dernier_Bloc return Boolean; procedure Insere_Offset (Un_Temps : Integer); function Donne_Offset return Integer; function Donne_Profondeur return Integer; function Scene_Existe (Un_Nom : Symbole) return Boolean; function Insere_Scene (Un_Nom : Symbole) return Boolean; function Va_Scene (Un_Nom : Symbole) return Boolean; procedure Insere_Type_Bloc (Un_Nom : Symbole); function Donne_Type_Bloc return Symbole; function Donne_Nouvelle_Liste (Type_Liste : Boolean) return Pliste; function Liste_Vide return Pliste; procedure Memorise_Bloc_Courant (I : Integer); procedure Retourne_Bloc_Memorise (I : Integer); procedure Insere_Liste_Symbole (Un_Element : Symbole; Une_Valeur : Integer); procedure Insere_Liste_Symbole (Un_Element : Symbole; Une_Liste : Liste); procedure Insere_Liste_Action (Une_Action : Symbole; Un_Acteur : Symbole; De : Integer; Vers : Integer; En : Integer); function Qui_Es_Tu (Un_Element : Symbole) return Liste; procedure Liste_Action_Donne (Une_Action : out Symbole; Un_Acteur : out Symbole; De : out Integer; Vers : out Integer; En : out Integer); function Liste_Action_Suivante return Boolean; function Liste_Action_Init return Boolean; procedure Prend_Liste (Une_Liste : in Liste); function Donne_Liste (Un_Pointeur : Pliste) return Liste; function Donne_Type_Liste return Boolean; function Donne_Taille_Liste return Integer; function Suivant return Boolean; function Donne_Element return Symbole; function Donne_Element return Integer; procedure Concate (Un_Element : Symbole; Une_Liste : in out Pliste); procedure Concate (Une_Valeur : Integer; Une_Liste : in out Pliste); procedure Construit_Liste_Offset; function Suivant_Liste_Offset_Est_Bloc_Courant return Boolean; function Init_Liste_Offset (Un_Nom : Symbole) return Boolean; private type Pliste is access Liste; type Liste (Type_Cont : Boolean) is record Suivant : Pliste := null; Precedent : Pliste := null; case Type_Cont is when True => Contenu : Symbole; when False => Valeur : Integer; end case; end record; type Grande_Liste (Action : Boolean); type Pgrande_Liste is access Grande_Liste; type Grande_Liste (Action : Boolean) is record Suivant : Pgrande_Liste := null; Precedent : Pgrande_Liste := null; case Action is when False => Index : Pliste := null; Contenu : Symbole; when True => Une_Action : Symbole; Un_Acteur : Symbole; De, Vers, En : Integer := -10; end case; end record; type Le_Bloc; type Pbloc is access Le_Bloc; --les types suivant sont dans cette partie car on les instancie, de maniere indirecte, par symbole. type Le_Bloc is record Liste_Symbole : Pgrande_Liste := null; Liste_Action : Pgrande_Liste := null; Offset : Integer := 0; Rep : Integer := -1; Type_Bloc : Symbole; Dernier_Bloc : Boolean; Le_Pere : Pbloc := null; Le_Fils : Pbloc := null; Le_Frere_Aine : Pbloc := null; Le_Frere_Cadet : Pbloc := null; Un_Compteur : Integer range 1 .. 32 := 1; Profondeur : Integer := 0; end record; end Bloc;
nblk1=8 nid=2 hdr6=e [0x00] rec0=1b rec1=00 rec2=01 rec3=01c [0x01] rec0=02 rec1=00 rec2=08 rec3=04a [0x02] rec0=15 rec1=00 rec2=07 rec3=054 [0x03] rec0=19 rec1=00 rec2=06 rec3=03a [0x04] rec0=05 rec1=00 rec2=03 rec3=004 [0x05] rec0=1e rec1=00 rec2=05 rec3=042 [0x06] rec0=0c rec1=00 rec2=04 rec3=001 [0x07] rec0=28 rec1=4d rec2=d4 rec3=5ee tail 0x21736e88484eb6fe94957 0x42a00088462060003 Free Block Chain: 0x2: 0000 00 00 00 55 80 13 63 63 65 73 73 20 47 72 61 6e ┆ U ccess Gran┆