|
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: 38912 (0x9800) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Liste_D_Instructions, seg_046a82
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦this⟧
with Unchecked_Deallocation, Text_Io, Simulateur_Itr, Bounded_String, Set_Of_Links, Set_Of_Connections, Lexical, Erreur; use Bounded_String, Lexical; package body Liste_D_Instructions is procedure Free is new Unchecked_Deallocation (Cell, Object); type Listiter is new Object; function Last (L : in Object) return Object is Place_In_L : Object; Temp_Place_In_L : Object; begin if L = null then return null; else Place_In_L := L; while Place_In_L /= null loop Temp_Place_In_L := Place_In_L; Place_In_L := Place_In_L.Next; end loop; return Temp_Place_In_L; end if; end Last; procedure Attache (List1 : in out Object; List2 : in Object) is Endoflist1 : Object; begin if List1 = null then List1 := List2; return; else Endoflist1 := Last (List1); Endoflist1.Next := List2; end if; end Attache; procedure Attache (L : in out Object; Element : in Itemtype) is Newend : Object; begin Newend := new Cell'(Info => Element, Next => null); Attache (L, Newend); end Attache; function Creation return Object is begin return null; end Creation; function Creation_Iterateur (L : in Object) return Listiter is begin return Listiter (L); end Creation_Iterateur; procedure Avancer (I : in out Listiter) is begin if I /= null then I := Listiter (I.Next); end if; end Avancer; function Est_Vide (L : in Object) return Boolean is begin return (L = null); end Est_Vide; function Encore (L : in Listiter) return Boolean is begin return L /= null; end Encore; function Valeur ( I : in Listiter) return Itemtype is L : Object; begin L := Object (I); return L.Info; end Valeur; function Creer_Si (E : in Abstract_Tree.Object; L_Alors : in Object; L_Sinon : in Object) return Object is L : Object; Elt : Itemtype (Si_Alors_Sinon); begin L := Creation; Elt.Genre := Si_Alors_Sinon; Elt.Exp_Cond := E; Elt.Alors := L_Alors; Elt.Sinon := L_Sinon; Attache (L, Elt); return L; end Creer_Si; function Creer_Pour (E : in Integer; L_Faire : in Object) return Object is L : Object; Elt : Itemtype (Pour_Faire); begin Elt.Genre := Pour_Faire; Elt.Entier := E; Elt.Faire := L_Faire; Attache (L, Elt); return L; end Creer_Pour; function Creer_Affec (N_Var, N_Ext : in Bounded_String.Variable_String; E : in Abstract_Tree.Object) return Object is L : Object; Elt : Itemtype (Affectation); begin Elt.Genre := Affectation; Elt.Nom_Var := N_Var; Elt.Nom_Extension := N_Ext; Elt.Exp_Generale := E; Attache (L, Elt); return L; end Creer_Affec; function Creer_Lie_Con (V1, V2 : in Bounded_String.Variable_String) return Object is L : Object; Elt : Itemtype (Lie_Connexion); begin Elt.Genre := Lie_Connexion; Elt.Var1_Lie := V1; Elt.Var2_Lie := V2; Attache (L, Elt); return L; end Creer_Lie_Con; function Creer_Delie_Con (V1, V2 : in Bounded_String.Variable_String) return Object is L : Object; Elt : Itemtype (Delie_Connexion); begin Elt.Genre := Delie_Connexion; Elt.Var1_Lie := V1; Elt.Var2_Lie := V2; Attache (L, Elt); return L; end Creer_Delie_Con; function Creer_Lie_Lien (V1, V2 : in Bounded_String.Variable_String) return Object is L : Object; Elt : Itemtype (Lie_Lien); begin Elt.Genre := Lie_Lien; Elt.Var1_Lie := V1; Elt.Var2_Lie := V2; Attache (L, Elt); return L; end Creer_Lie_Lien; function Creer_Delie_Lien (V1, V2 : in Bounded_String.Variable_String) return Object is L : Object; Elt : Itemtype (Delie_Lien); begin Elt.Genre := Delie_Lien; Elt.Var1_Lie := V1; Elt.Var2_Lie := V2; Attache (L, Elt); return L; end Creer_Delie_Lien; function Creer_Echanger_Lien (V1, V2, V3 : in Bounded_String.Variable_String) return Object is L : Object; Elt : Itemtype (Echanger_Lien); begin Elt.Genre := Echanger_Lien; Elt.Var1_Ech := V1; Elt.Var2_Ech := V2; Elt.Var3_Ech := V3; Attache (L, Elt); return L; end Creer_Echanger_Lien; function Creer_Liste (V1 : in Bounded_String.Variable_String; V2 : Lexical.Token) return Object is L : Object; Elt : Itemtype (Liste_Lien); begin Elt.Genre := Liste_Lien; Elt.Var_Liste := V1; Elt.Etat := V2; Attache (L, Elt); return L; end Creer_Liste; function Creer_Afficher (P1 : in Integer) return Object is L : Object; Elt : Itemtype (Afficher); begin Elt.Genre := Afficher; Elt.Param1 := P1; Attache (L, Elt); return L; end Creer_Afficher; function Creer_Fin return Object is L : Object; Elt : Itemtype (Fin); begin Elt.Genre := Fin; Attache (L, Elt); return L; end Creer_Fin; function Creer_Vide return Object is L : Object; Elt : Itemtype (Vide); begin Elt.Genre := Vide; Attache (L, Elt); return L; end Creer_Vide; procedure Afficher (Elt : in Itemtype) is begin case Elt.Genre is when Affectation => Text_Io.Put (Image (Elt.Nom_Var)); if (Bounded_String.Length (Elt.Nom_Extension) > 0) then Text_Io.Put ("." & Image (Elt.Nom_Extension)); end if; Text_Io.Put_Line (" = "); Abstract_Tree.Dump (Elt.Exp_Generale); when Lie_Connexion => Text_Io.Put (Image (Elt.Var1_Lie) & " , "); Text_Io.Put_Line (Image (Elt.Var2_Lie)); when Delie_Connexion => Text_Io.Put (Image (Elt.Var1_Lie) & " , "); Text_Io.Put_Line (Image (Elt.Var2_Lie)); when Lie_Lien => Text_Io.Put (Image (Elt.Var1_Lie) & " , "); Text_Io.Put_Line (Image (Elt.Var2_Lie)); when Delie_Lien => Text_Io.Put (Image (Elt.Var1_Lie) & " , "); Text_Io.Put_Line (Image (Elt.Var2_Lie)); when Liste_Lien => Text_Io.Put (Image (Elt.Var_Liste) & " , "); Text_Io.Put_Line (Lexical.Token'Image (Elt.Etat)); when Echanger_Lien => Text_Io.Put (Image (Elt.Var1_Ech) & " , "); Text_Io.Put (Image (Elt.Var2_Ech) & " , "); Text_Io.Put_Line (Image (Elt.Var3_Ech)); when Afficher => Text_Io.Put_Line (Integer'Image (Elt.Param1)); when Fin => null; when Vide => null; when others => null; end case; end Afficher; procedure Afficher_Esp (Nb : Integer) is begin for I in 1 .. Nb loop Text_Io.Put (" "); end loop; end Afficher_Esp; procedure Afficher_Struct (Nb : Integer; O : in Object) is I : Listiter; E : Itemtype; begin I := Creation_Iterateur (O); while Encore (I) loop E := Valeur (I); case E.Genre is when Si_Alors_Sinon => Afficher_Esp (Nb); Text_Io.Put_Line ("SI"); Abstract_Tree.Dump_Struct (Nb + 2, E.Exp_Cond); Afficher_Esp (Nb); Text_Io.Put_Line ("ALORS"); Afficher_Struct (Nb + 2, E.Alors); Afficher_Esp (Nb); Text_Io.Put_Line ("SINON"); Afficher_Struct (Nb + 2, E.Sinon); Afficher_Esp (Nb); Text_Io.Put_Line ("FIN_SI"); when Pour_Faire => Afficher_Esp (Nb); Text_Io.Put_Line ("POUR " & Integer'Image (E.Entier) & " ENTREE FAIRE "); Afficher_Struct (Nb + 2, E.Faire); Afficher_Esp (Nb); Text_Io.Put_Line ("FIN_POUR"); when Affectation => Afficher_Esp (Nb); Text_Io.Put (Image (E.Nom_Var)); if Bounded_String.Length (E.Nom_Extension) > 0 then Text_Io.Put ("." & Image (E.Nom_Extension)); end if; Text_Io.Put_Line (" = "); Abstract_Tree.Dump_Struct (Nb + 2, E.Exp_Generale); when Lie_Connexion => Afficher_Esp (Nb); Text_Io.Put_Line ("LIE_CONNEXION ( " & Image (E.Var1_Lie) & ", " & Image (E.Var2_Lie) & " )"); when Delie_Connexion => Afficher_Esp (Nb); Text_Io.Put_Line ("DELIE_CONNEXION ( " & Image (E.Var1_Lie) & ", " & Image (E.Var2_Lie) & " )"); when Lie_Lien => Afficher_Esp (Nb); Text_Io.Put_Line ("LIE_LIEN ( " & Image (E.Var1_Lie) & ", " & Image (E.Var2_Lie) & " )"); when Delie_Lien => Afficher_Esp (Nb); Text_Io.Put_Line ("DELIE_LIEN ( " & Image (E.Var1_Lie) & ", " & Image (E.Var2_Lie) & " )"); when Liste_Lien => Afficher_Esp (Nb); Text_Io.Put_Line ("LISTE_LIEN ( " & Image (E.Var_Liste) & ", " & Lexical.Token'Image (E.Etat) & " )"); when Echanger_Lien => Afficher_Esp (Nb); Text_Io.Put_Line ("ECHANGER_LIEN ( " & Image (E.Var1_Ech) & ", " & Image (E.Var2_Ech) & ", " & Image (E.Var3_Ech) & " )"); when Afficher => Afficher_Esp (Nb); Text_Io.Put_Line ("-- fonction afficher "); when Fin => Afficher_Esp (Nb); Text_Io.Put_Line ("FIN"); when Vide => Afficher_Esp (Nb); Text_Io.Put_Line ("-- Vide"); end case; Avancer (I); end loop; end Afficher_Struct; procedure Afficher (O : in Object) is begin Afficher_Struct (0, O); end Afficher; procedure Executer_Si (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Connect : in out Set_Of_Connections.Object; Links : in out Set_Of_Links.Object); procedure Executer_Pour (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Connect : in out Set_Of_Connections.Object; Links : in out Set_Of_Links.Object); procedure Executer_Affec (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Connect : in out Set_Of_Connections.Object; Links : in out Set_Of_Links.Object); procedure Executer_Lie_Con (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Connect : in out Set_Of_Connections.Object); procedure Executer_Delie_Con (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Connect : in out Set_Of_Connections.Object); procedure Executer_Lie_Lien (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Links : in out Set_Of_Links.Object); procedure Executer_Delie_Lien (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Links : in out Set_Of_Links.Object); procedure Executer_Liste (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Links : in out Set_Of_Links.Object); procedure Executer_Echanger (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Links : in out Set_Of_Links.Object); procedure Executer_Afficher (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object); procedure Executer_Fin (E : Itemtype); procedure Executer_Vide (E : Itemtype); procedure Executer (L : in Object; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Connect : in out Set_Of_Connections.Object; Links : in out Set_Of_Links.Object) is E : Itemtype; I : Listiter; begin I := Creation_Iterateur (L); while (Encore (I)) loop E := Valeur (I); case E.Genre is when Si_Alors_Sinon => Executer_Si (E, Models_Table, Symbols_Table, Connect, Links); when Pour_Faire => Executer_Pour (E, Models_Table, Symbols_Table, Connect, Links); when Affectation => Executer_Affec (E, Models_Table, Symbols_Table, Connect, Links); when Lie_Connexion => Executer_Lie_Con (E, Models_Table, Symbols_Table, Connect); when Delie_Connexion => Executer_Delie_Con (E, Models_Table, Symbols_Table, Connect); when Lie_Lien => Executer_Lie_Lien (E, Models_Table, Symbols_Table, Links); when Delie_Lien => Executer_Delie_Lien (E, Models_Table, Symbols_Table, Links); when Liste_Lien => Executer_Liste (E, Models_Table, Symbols_Table, Links); when Echanger_Lien => Executer_Echanger (E, Models_Table, Symbols_Table, Links); when Afficher => Executer_Afficher (E, Models_Table, Symbols_Table); when Fin => Executer_Fin (E); when Vide => Executer_Vide (E); end case; Avancer (I); end loop; end Executer; procedure Executer_Si (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Connect : in out Set_Of_Connections.Object; Links : in out Set_Of_Links.Object) is Cond : Boolean; begin Text_Io.Put_Line (" execution de si-alors-sinon "); Cond := Abstract_Tree.Evaluate_Node (E.Exp_Cond, Models_Table, Symbols_Table, Connect, Links); Abstract_Tree.Dump (E.Exp_Cond); if (Cond) then Text_Io.Put_Line (" verifiee execution de alors "); Executer (E.Alors, Models_Table, Symbols_Table, Connect, Links); else Text_Io.Put_Line (" non verifiee execution de sinon "); Executer (E.Sinon, Models_Table, Symbols_Table, Connect, Links); end if; Text_Io.Put_Line (" fin de si-alors-sinon "); end Executer_Si; procedure Executer_Pour (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Connect : in out Set_Of_Connections.Object; Links : in out Set_Of_Links.Object) is begin Text_Io.Put_Line (" execution de pour-faire =>"); if (Simulateur_Itr.Total_Entries mod E.Entier = 0) then Text_Io.Put_Line (" condition verifiee "); Executer (E.Faire, Models_Table, Symbols_Table, Connect, Links); end if; Text_Io.Put_Line (" fin de pour-faire "); end Executer_Pour; procedure Executer_Affec (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Connect : in out Set_Of_Connections.Object; Links : in out Set_Of_Links.Object) is The_Integer : Integer; The_Booleen : Boolean; begin Text_Io.Put_Line (" execution affectation "); Afficher (E); if Bounded_String.Length (E.Nom_Extension) = 0 then if Symbols.Is_Pointer (Symbols_Table, Image (E.Nom_Var)) then null; -- A implementer else Erreur.Execution ("Manque l'extension pour l'acces a la variable !!!"); end if; else if Symbols.Get_Symbol_Type (Symbols_Table, Models_Table, Image (E.Nom_Var), Image (E.Nom_Extension)) = "ENTIER" or Symbols.Get_Symbol_Type (Symbols_Table, Models_Table, Image (E.Nom_Var), Image (E.Nom_Extension)) = "ENUMERE" then The_Integer := Abstract_Tree.Evaluate_Node (E.Exp_Generale, Models_Table, Symbols_Table, Connect, Links); -- symbols.put_symbol_value(Symbols_Table, Models_Table,Image(e.Nom_Var),Image(e.nom_extension)); else if Symbols.Get_Symbol_Type (Symbols_Table, Models_Table, Image (E.Nom_Var), Image (E.Nom_Extension)) = "BOOLEEN" then The_Booleen := Abstract_Tree.Evaluate_Node (E.Exp_Generale, Models_Table, Symbols_Table, Connect, Links); -- symbols.put_symbol_value(Symbols_Table, Models_Table,Image(e.Nom_Var),Image(e.nom_extension)) else Erreur.Execution ("Affectation non valide !!!"); end if; end if; end if; Text_Io.Put_Line (" fin de affectation "); end Executer_Affec; procedure Executer_Lie_Con (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Connect : in out Set_Of_Connections.Object) is begin Text_Io.Put_Line (" execution lie_connexion "); Afficher (E); if Image (E.Var1_Lie) = "COMP" then Set_Of_Connections.Modify_State (Simulateur_Itr.First_Comp_Value, Image (E.Var2_Lie), Set_Of_Connections.Linked, Connect); else if Image (E.Var2_Lie) = "COMP" then Set_Of_Connections.Modify_State (Image (E.Var1_Lie), Simulateur_Itr.First_Comp_Value, Set_Of_Connections.Linked, Connect); else Set_Of_Connections.Modify_State (Image (E.Var1_Lie), Image (E.Var2_Lie), Set_Of_Connections.Linked, Connect); end if; end if; Text_Io.Put_Line (" fin de lie_connexion "); end Executer_Lie_Con; procedure Executer_Delie_Con (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Connect : in out Set_Of_Connections.Object) is begin Text_Io.Put_Line (" execution delie_connexion "); Afficher (E); if Image (E.Var1_Lie) = "COMP" then Set_Of_Connections.Modify_State (Simulateur_Itr.First_Comp_Value, Image (E.Var2_Lie), Set_Of_Connections.Unlinked, Connect); else if Image (E.Var2_Lie) = "COMP" then Set_Of_Connections.Modify_State (Image (E.Var1_Lie), Simulateur_Itr.First_Comp_Value, Set_Of_Connections.Unlinked, Connect); else Set_Of_Connections.Modify_State (Image (E.Var1_Lie), Image (E.Var2_Lie), Set_Of_Connections.Unlinked, Connect); end if; end if; Text_Io.Put_Line (" fin de delie_connexion "); end Executer_Delie_Con; procedure Executer_Lie_Lien (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Links : in out Set_Of_Links.Object) is begin Text_Io.Put_Line (" execution lie_lien "); Afficher (E); if Image (E.Var1_Lie) = "COMP" then Set_Of_Links.Modify_State (Simulateur_Itr.First_Comp_Value, Image (E.Var2_Lie), Set_Of_Links.Linked, Links); else if Image (E.Var2_Lie) = "COMP" then Set_Of_Links.Modify_State (Image (E.Var1_Lie), Simulateur_Itr.First_Comp_Value, Set_Of_Links.Linked, Links); else Set_Of_Links.Modify_State (Image (E.Var1_Lie), Image (E.Var2_Lie), Set_Of_Links.Linked, Links); end if; end if; Text_Io.Put_Line (" fin de lie_lien "); end Executer_Lie_Lien; procedure Executer_Delie_Lien (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Links : in out Set_Of_Links.Object) is begin Text_Io.Put_Line (" execution delie_lien "); Afficher (E); if Image (E.Var1_Lie) = "COMP" then Set_Of_Links.Modify_State (Simulateur_Itr.First_Comp_Value, Image (E.Var2_Lie), Set_Of_Links.Unlinked, Links); else if Image (E.Var2_Lie) = "COMP" then Set_Of_Links.Modify_State (Image (E.Var1_Lie), Simulateur_Itr.First_Comp_Value, Set_Of_Links.Unlinked, Links); else Set_Of_Links.Modify_State (Image (E.Var1_Lie), Image (E.Var2_Lie), Set_Of_Links.Unlinked, Links); end if; end if; Text_Io.Put_Line (" fin de delie_lien "); end Executer_Delie_Lien; procedure Executer_Liste (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Links : in out Set_Of_Links.Object) is begin Text_Io.Put_Line (" execution liste_lien "); Afficher (E); if E.Etat = Lie then if Image (E.Var_Liste) = "COMP" then Set_Of_Links.List (Simulateur_Itr.First_Comp_Value, Set_Of_Links.Linked, Links); else Set_Of_Links.List (Image (E.Var_Liste), Set_Of_Links.Linked, Links); end if; else if Image (E.Var_Liste) = "COMP" then Set_Of_Links.List (Simulateur_Itr.First_Comp_Value, Set_Of_Links.Unlinked, Links); else Set_Of_Links.List (Image (E.Var_Liste), Set_Of_Links.Unlinked, Links); end if; end if; Text_Io.Put_Line (" fin de liste_lien "); end Executer_Liste; procedure Executer_Echanger (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object; Links : in out Set_Of_Links.Object) is begin Text_Io.Put_Line (" execution echanger_lien "); Afficher (E); if Image (E.Var1_Ech) = "COMP" then Set_Of_Links.Exchange (Simulateur_Itr.First_Comp_Value, Image (E.Var2_Ech), Image (E.Var3_Ech), Links); else if Image (E.Var2_Ech) = "COMP" then Set_Of_Links.Exchange (Image (E.Var1_Ech), Simulateur_Itr.First_Comp_Value, Image (E.Var3_Ech), Links); else if Image (E.Var3_Ech) = "COMP" then Set_Of_Links.Exchange (Image (E.Var1_Ech), Image (E.Var2_Ech), Simulateur_Itr.First_Comp_Value, Links); else Set_Of_Links.Exchange (Image (E.Var1_Lie), Image (E.Var2_Lie), Image (E.Var3_Ech), Links); end if; end if; end if; Text_Io.Put_Line (" fin de echanger_lien "); end Executer_Echanger; procedure Executer_Afficher (E : Itemtype; Models_Table : Models.Object; Symbols_Table : Symbols.Object) is begin Text_Io.Put_Line (" execution afficher "); Afficher (E); Text_Io.Put_Line (" fin de afficher "); end Executer_Afficher; procedure Executer_Fin (E : Itemtype) is begin Text_Io.Put_Line (" execution fin "); Afficher (E); Text_Io.Put_Line (" fin de fin "); end Executer_Fin; procedure Executer_Vide (E : Itemtype) is begin Text_Io.Put_Line (" execution vide "); Afficher (E); Text_Io.Put_Line (" fin de vide "); end Executer_Vide; procedure Detruire_Element (L : in out Object) is begin case L.Info.Genre is when Si_Alors_Sinon => Abstract_Tree.Destroy (L.Info.Exp_Cond); Detruire (L.Info.Alors); Detruire (L.Info.Sinon); Free (L); when Pour_Faire => Detruire (L.Info.Faire); Free (L); when Afficher => -- a completer Free (L); when Affectation => Abstract_Tree.Destroy (L.Info.Exp_Generale); Free (L); when others => Free (L); end case; end Detruire_Element; procedure Detruire (L : in out Object) is L1, L2 : Object; begin L1 := L; while not Est_Vide (L1) loop L2 := L1.Next; Detruire_Element (L1); L1 := L2; end loop; end Detruire; end Liste_D_Instructions;
nblk1=25 nid=25 hdr6=48 [0x00] rec0=26 rec1=00 rec2=01 rec3=00a [0x01] rec0=2b rec1=00 rec2=1a rec3=018 [0x02] rec0=01 rec1=00 rec2=05 rec3=02a [0x03] rec0=22 rec1=00 rec2=06 rec3=00a [0x04] rec0=20 rec1=00 rec2=07 rec3=01a [0x05] rec0=22 rec1=00 rec2=08 rec3=03a [0x06] rec0=26 rec1=00 rec2=13 rec3=01e [0x07] rec0=13 rec1=00 rec2=09 rec3=002 [0x08] rec0=18 rec1=00 rec2=11 rec3=01e [0x09] rec0=23 rec1=00 rec2=0e rec3=010 [0x0a] rec0=16 rec1=00 rec2=0a rec3=03a [0x0b] rec0=15 rec1=00 rec2=10 rec3=05c [0x0c] rec0=00 rec1=00 rec2=12 rec3=028 [0x0d] rec0=16 rec1=00 rec2=15 rec3=02c [0x0e] rec0=1e rec1=00 rec2=16 rec3=03c [0x0f] rec0=14 rec1=00 rec2=19 rec3=008 [0x10] rec0=00 rec1=00 rec2=0c rec3=00e [0x11] rec0=14 rec1=00 rec2=02 rec3=010 [0x12] rec0=01 rec1=00 rec2=1f rec3=028 [0x13] rec0=1e rec1=00 rec2=14 rec3=014 [0x14] rec0=02 rec1=00 rec2=03 rec3=00a [0x15] rec0=15 rec1=00 rec2=04 rec3=04c [0x16] rec0=1b rec1=00 rec2=1c rec3=008 [0x17] rec0=15 rec1=00 rec2=1b rec3=076 [0x18] rec0=18 rec1=00 rec2=20 rec3=074 [0x19] rec0=12 rec1=00 rec2=24 rec3=064 [0x1a] rec0=12 rec1=00 rec2=21 rec3=008 [0x1b] rec0=17 rec1=00 rec2=23 rec3=05a [0x1c] rec0=18 rec1=00 rec2=22 rec3=024 [0x1d] rec0=17 rec1=00 rec2=17 rec3=03e [0x1e] rec0=17 rec1=00 rec2=1e rec3=010 [0x1f] rec0=18 rec1=00 rec2=18 rec3=01c [0x20] rec0=14 rec1=00 rec2=0f rec3=016 [0x21] rec0=1d rec1=00 rec2=1d rec3=01e [0x22] rec0=20 rec1=00 rec2=0b rec3=002 [0x23] rec0=05 rec1=00 rec2=0d rec3=001 [0x24] rec0=86 rec1=ba rec2=42 rec3=400 tail 0x215437024865183dd1058 0x42a00088462060003 Free Block Chain: 0x25: 0000 00 00 00 95 80 0e 20 3d 20 22 43 4f 4d 50 22 20 ┆ = "COMP" ┆