|
|
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: 9216 (0x2400)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Main, seg_046516
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
with Text_Io, Lexical;
with Nom_Jeu, Les_Actions, Les_Definitions, Les_Presentations;
with Les_Liaisons, Les_Anims_Globales, Les_Anims_Generales,
Les_Anims_Locales, Fin_Jeu, Erreur;
with Verbs_Dictionary, Comps_Dictionary;
with Models, Symbols;
with Set_Of_Links, Set_Of_Connections;
with Player_Entries, Interprete;
use Text_Io;
procedure Main is
Nomf : constant String := "Ex_Jeu";
Dict : Verbs_Dictionary.Object;
Comp : Comps_Dictionary.Object;
Models_Table : Models.Object;
Symbols_Table : Symbols.Object;
Links : Set_Of_Links.Object;
Connect : Set_Of_Connections.Object;
begin
Lexical.Init (Nomf);
Lexical.Next;
Verbs_Dictionary.Create (Dict);
Comps_Dictionary.Create (Comp);
Models.Create (Models_Table);
Symbols.Create (Symbols_Table);
Set_Of_Links.Create (Links);
Set_Of_Connections.Create (Connect);
-- Put ("Nom_Jeu ............... ");
Nom_Jeu.Parse;
-- Put_Line ("OK");
-- Put ("Les_Actions ........... ");
Les_Actions.Parse (Dict);
-- Put_Line ("OK");
-- Put ("Les_Definitions ....... ");
Les_Definitions.Parse (Models_Table, Symbols_Table);
-- Put_Line ("OK");
-- Put ("Les_Presentations ..... ");
Les_Presentations.Parse (Models_Table, Symbols_Table, Comp);
-- Put_Line ("OK");
-- Put ("Les_Liaisons .......... ");
Les_Liaisons.Parse (Comp, Connect, Links);
-- Put_Line ("OK");
-- Put ("Les_Anims_Generales ... ");
Les_Anims_Generales.Parse (Models_Table, Symbols_Table, Comp, Dict);
-- Put_Line ("OK");
-- Put ("Les_Anims_Globales .... ");
Les_Anims_Globales.Parse (Models_Table, Symbols_Table, Comp, Dict);
-- Put_Line ("OK");
-- Put ("Les_Anims_Locales ..... ");
Les_Anims_Locales.Parse (Models_Table, Symbols_Table, Comp, Dict);
-- Put_Line ("OK");
-- Put ("Fin_Jeu ............... ");
Fin_Jeu.Parse;
-- Put_Line ("OK");
if not Erreur.Probleme_De_Compilation then
Text_Io.Put_Line ("Source Ok.");
else
Text_Io.Put_Line ("Erreurs !!!");
end if;
declare
End_Of_The_Game : Boolean := False;
Player_Command : Player_Entries.Token;
begin
while not End_Of_The_Game loop
Player_Command := Interprete.Get_Player (Comp, Dict);
case Player_Command is
when Player_Entries.Fin =>
End_Of_The_Game := True;
when Player_Entries.Verbe =>
Text_Io.Put_Line
("-- Liste des Verbes -------------------------------------------------");
Verbs_Dictionary.Dump (Dict);
when Player_Entries.Complement =>
Text_Io.Put_Line
("-- Liste des Complements --------------------------------------------");
Comps_Dictionary.Dump (Comp);
when Player_Entries.Modele =>
Text_Io.Put_Line
("-- Liste des Models :Definition des types ---------------------------");
Models.Dump_Models (Models_Table);
when Player_Entries.Symbole =>
Text_Io.Put_Line
("-- Table des Symboles -----------------------------------------------");
Symbols.Dump_Symbols (Symbols_Table);
when Player_Entries.Connexion =>
Text_Io.Put_Line
("-- Liste des Connexions --------------------------------------------");
Set_Of_Connections.Dump (Connect);
when Player_Entries.Lien =>
Text_Io.Put_Line
("-- Liste des Liens --------------------------------------------------");
Set_Of_Links.Dump (Links);
when Player_Entries.Id =>
Text_Io.Put_Line
("-- Execution des instructions du jeu --------------------------------");
when others =>
Text_Io.Put_Line
(" --- Fonctions pas encore implementees-------------------------------");
end case;
end loop;
end;
Verbs_Dictionary.Destroy (Dict);
Comps_Dictionary.Destroy (Comp);
Models.Dispose_Object (Models_Table);
Symbols.Dispose_Object (Symbols_Table);
Set_Of_Links.Destroy (Links);
Set_Of_Connections.Destroy (Connect);
Lexical.Close;
exception
when Erreur.Erreur_Syntaxe =>
Text_Io.Put_Line (" -- Erreur Fatale");
Text_Io.Put_Line ("Bye, bye...");
Verbs_Dictionary.Destroy (Dict);
when Verbs_Dictionary.Duplicate_Value =>
Text_Io.Put ("Lg:");
Text_Io.Put (Natural'Image (Lexical.Get_Line));
Text_Io.Put (" Cl:");
Text_Io.Put (Natural'Image (Lexical.Get_Column));
-- when others => Text_Io.Put_Line ("Erreur inconnue");
end Main;
nblk1=8
nid=7
hdr6=e
[0x00] rec0=26 rec1=00 rec2=01 rec3=024
[0x01] rec0=03 rec1=00 rec2=06 rec3=00a
[0x02] rec0=20 rec1=00 rec2=05 rec3=018
[0x03] rec0=1b rec1=00 rec2=02 rec3=016
[0x04] rec0=13 rec1=00 rec2=08 rec3=052
[0x05] rec0=22 rec1=00 rec2=04 rec3=004
[0x06] rec0=06 rec1=00 rec2=03 rec3=001
[0x07] rec0=dc rec1=9c rec2=1a rec3=0c2
tail 0x21748c7c8865051ccb72d 0x42a00088462060003
Free Block Chain:
0x7: 0000 00 00 03 fc 80 21 20 20 20 20 28 53 79 6d 62 6f ┆ ! (Symbo┆