|
|
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 - metrics - download
Length: 6144 (0x1800)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Pilote_2, seg_052bec
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦5a81ac88f⟧ »Space Info Vol 1«
└─⟦this⟧
with Com_Ihm_2;
with Trame_Ihm_68;
with Simple_Io;
with Configurateur_2;
with Chargeur_Bdd;
with Gest_Buffer_2;
procedure Pilote_2 is
type T_Action_En_Cours is
(Aucune_Action, Debut, Phase_De_Config, Fonctionnement_Normal);
Action_En_Cours : T_Action_En_Cours := Debut;
Derniere_Action : T_Action_En_Cours := Aucune_Action;
procedure Automate_Error is
Trame : Trame_Ihm_68.Object;
begin
Trame_Ihm_68.Create (O => Trame, Action => Trame_Ihm_68.Nack);
Com_Ihm_2.Ecriture (Trame_Ihm_68.Image (Trame));
Simple_Io.Put_Line ("---> Trame erronee");
end Automate_Error;
procedure Automate_Ack is
Trame : Trame_Ihm_68.Object;
begin
Trame_Ihm_68.Create (O => Trame, Action => Trame_Ihm_68.Ack);
Com_Ihm_2.Ecriture (Trame_Ihm_68.Image (Trame));
Simple_Io.Put_Line ("--->");
end Automate_Ack;
procedure Automate (S : String) is
use Trame_Ihm_68;
Trame : Trame_Ihm_68.Object;
begin
begin
Trame := Trame_Ihm_68.Value (S => S);
exception
when others =>
Automate_Error;
end;
case Action_En_Cours is
when Debut =>
if Get_Action (Trame) = Config then
Action_En_Cours := Phase_De_Config;
Automate_Ack;
else
Automate_Error;
end if;
when Phase_De_Config =>
case Get_Action (Trame) is
when Creation =>
Chargeur_Bdd.Creation_Bdd (Trame);
Automate_Ack;
when Suppression =>
Chargeur_Bdd.Suppression_Bdd (Trame);
Automate_Ack;
when Modification =>
Chargeur_Bdd.Modification_Bdd (Trame);
Automate_Ack;
when Fin_Config =>
Configurateur_2.Programmation_Config;
Action_En_Cours := Fonctionnement_Normal;
Automate_Ack;
when others =>
Automate_Error;
end case;
when Fonctionnement_Normal =>
case Get_Action (Trame) is
when Config =>
Action_En_Cours := Phase_De_Config;
Automate_Ack;
when Rapport =>
Gest_Buffer_2.Rapport_Cl35;
Simple_Io.Put_Line ("---> Demande rapport");
when others =>
Automate_Error;
end case;
when others =>
null;
end case;
end Automate;
begin
Com_Ihm_2.Initialisation;
loop
if Action_En_Cours /= Derniere_Action then
Simple_Io.Put_Line ("Etat de l'Automate >> " &
T_Action_En_Cours'Image (Action_En_Cours));
Derniere_Action := Action_En_Cours;
end if;
Automate (Com_Ihm_2.Lecture);
end loop;
end Pilote_2;
pragma Main;
nblk1=5
nid=3
hdr6=8
[0x00] rec0=22 rec1=00 rec2=01 rec3=016
[0x01] rec0=1c rec1=00 rec2=02 rec3=07c
[0x02] rec0=1e rec1=00 rec2=05 rec3=010
[0x03] rec0=0e rec1=00 rec2=04 rec3=000
[0x04] rec0=1d rec1=00 rec2=05 rec3=000
tail 0x2154bc06887a33dd51032 0x42a00088462060003
Free Block Chain:
0x3: 0000 00 00 00 04 80 01 65 01 02 03 04 73 69 6f 6e 5f ┆ e sion_┆