DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

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

See our Wiki for more about Rational R1000/400

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦3a011bbd1⟧ Ada Source

    Length: 11264 (0x2c00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Tiny_Error, seg_036152, seg_0361b9, seg_03639d

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« 
        └─⟦this⟧ 

E3 Source Code



with Text_Io, Bounded_String, Scanner, Tiny_X, Easy_X, Scanner, Message;
package body Tiny_Error is

    package Bs renames Bounded_String;
    procedure Write (Error : String) is
        use Easy_X;
        P : Natural;
        Error_Message : Message.Tiny_String;
    begin
        Tiny_X.Close;
        Tiny_X.Open ("Une erreur est apparue", 200, 400, 900, 200);
        Bs.Copy (Error_Message,
                 "Ligne " & Natural'Image (Scanner.Get_Line_Number) &
                    ": " & Error);
        loop
            case Easy_X.Next_Event is
                when Easy_X.Update =>
                    Easy_X.Set_Font (Easy_X.Medium_Font);
                    Easy_X.Move_To
                       (Easy_X.Coordinate
                           ((900 - 10 * Bs.Image (Error_Message)'Length) / 2),
                        100);
                    Easy_X.Draw_String (Bs.Image (Error_Message));
                    Easy_X.Set_Font (Easy_X.Small_Font);
                    Easy_X.Move_To (300, 170);
                    Easy_X.Draw_String ("Cliquer dans la fenetre pour sortir");
                when Easy_X.Button_Down =>
                    exit;
                when others =>
                    null;
            end case;
        end loop;  
        P := (900 - 10 * Bs.Image (Error_Message)'Length) / 2;
        Easy_X.Set_Font (Easy_X.Medium_Font);
        for I in 0 .. Integer ((Bs.Image (Error_Message)'Length * 5) / 4) loop
            Easy_X.Move_To (Easy_X.Coordinate (P + I * 5), 100);
            Easy_X.Draw_String (" ");
            Easy_X.Move_To (Easy_X.Coordinate (900 - (P + I * 5)), 100);
            Easy_X.Draw_String (" ");  
        end loop;
        Tiny_X.Close;
    end Write;

    procedure String_Class_Full is
    begin
        Write ("La table des chaines est pleine !!!");
    end String_Class_Full;

    procedure String_Large_Overflow is
    begin
        Write ("La chaine de caractere est trop grande!!!");
    end String_Large_Overflow;

    procedure Search_No_String_Object is
    begin
        Write
           ("Recherche d'un chaine a partir d'un objet n'etant pas de la classe des chaines");
    end Search_No_String_Object;

    procedure Missing_Point is
    begin
        Write ("Il manque un point");
    end Missing_Point;

    procedure Missing_Reserved_Word is
    begin
        Write ("Il manque un mot reserve");
    end Missing_Reserved_Word;

    procedure Missing_Right_Parentheses is
    begin
        Write ("Il manque une parenthese fermante");
    end Missing_Right_Parentheses;

    procedure Missing_Right_Brace is
    begin
        Write ("Il manque une accolade fermante");
    end Missing_Right_Brace;

    procedure Mismatch_Arguments_List is
    begin
        Write ("La liste des arguments du bloc n'est pas coherente.");
    end Mismatch_Arguments_List;

    procedure Undefined_Name_In_Symbol_Table is
    begin
        Write
           (" La reference recherchee dans la table des symboles n'existe pas");
    end Undefined_Name_In_Symbol_Table;

    procedure Not_Enough_Messages is
    begin
        Write ("Il n'y a pas assez de messages pour un bloc");
    end Not_Enough_Messages;

    procedure Too_Many_Messages is
    begin
        Write ("Il y a trop de messages pour un bloc");
    end Too_Many_Messages;

    procedure Too_Many_Blocks is
    begin
        Write ("Il y a trop de blocs crees... ");
    end Too_Many_Blocks;

    procedure Block_Not_Found is
    begin
        Write ("Impossible de retrouver un bloc");
    end Block_Not_Found;


    procedure Unknown_Block_Message is
    begin
        Write ("Un objet bloc a recu un message inconnu");
    end Unknown_Block_Message;

    procedure Unknown_Integer_Message is
    begin
        Write ("Un Objet entier a recu un message inconnu");
    end Unknown_Integer_Message;

    procedure Unknown_Boolean_Message is
    begin
        Write ("Un Objet booleen a recu un message inconnu");
    end Unknown_Boolean_Message;

    procedure Unknown_Turtle_Message is
    begin
        Write ("Un Objet tortue a recu un message inconnu");

    end Unknown_Turtle_Message;

    procedure Turtle_Table_Full is
    begin
        Write ("Toutes les tortues sont deja utilisees !!!");
    end Turtle_Table_Full;

    procedure Too_Many_Pens is
    begin
        Write ("Tous les stylos sont deja utilises !!!");
    end Too_Many_Pens;

    procedure Unknown_String_Message is
    begin
        Write ("Un Objet string a recu un message inconnu");
    end Unknown_String_Message;

    procedure Unknown_Pen_Message is
    begin
        Write ("Un Objet Stylo a recu un message inconnu");
    end Unknown_Pen_Message;

    procedure Unknown_Date_Message is
    begin
        Write ("Un Objet date a recu un message inconnu");
    end Unknown_Date_Message;

    procedure Unexpected_Action_On_Date is
    begin
        Write ("Une action inattendue est survenue sur un object Date");
    end Unexpected_Action_On_Date;

    procedure Incorrect_Object is
    begin
        Write ("Un message vient d'etre emis vers un objet incorrect");
    end Incorrect_Object;

    procedure Too_Many_Keywords is
    begin
        Write ("Il y a trop de message");
    end Too_Many_Keywords;

    procedure Not_Enough_Keywords is
    begin
        Write ("Il n'y a pas asse de message");
    end Not_Enough_Keywords;

    procedure Missing_Identifier is
    begin
        Write ("Il manque un identifieur dans une liste d'argument");
    end Missing_Identifier;

    procedure Unexpected_Token is
    begin
        Write ("Il y a quelque chose d'inattendue");
    end Unexpected_Token;

    procedure Mismatch_Type is
    begin
        Write ("Operation sur objets de types incompatibles");
    end Mismatch_Type;

    procedure Mismatch_Message is
    begin
        Write ("Message incoherent");
    end Mismatch_Message;

    procedure Too_Many_Includes is
    begin
        Write ("Il y a trop de fichiers a inclure");
    end Too_Many_Includes;

    procedure Bad_File_Name is
    begin
        Write ("Nom de fichier incorrect");
    end Bad_File_Name;

    procedure Fatal_X is
    begin
        Text_Io.Put_Line
           ("Je ne peux pas ouvrir de fenetre sur l'ecran precise");
    end Fatal_X;

    procedure Numeric_Error is
    begin
        Write ("Erreur de calcul (dans le genre division par zero...)");
    end Numeric_Error;

    procedure Internal_Error is
    begin
        Write ("Erreur interne...???");
    end Internal_Error;

    procedure Out_Of_Range is
    begin
        Write ("Depassement de bornes");
    end Out_Of_Range;

    procedure Out_Of_Memory is
    begin
        Write ("Plus de memoire disponible");
    end Out_Of_Memory;

    procedure Unexpected_Include_File_Name is
    begin
        Write ("Nom du fichier a inclure incorrect");
    end Unexpected_Include_File_Name;

end Tiny_Error;

E3 Meta Data

    nblk1=a
    nid=6
    hdr6=10
        [0x00] rec0=19 rec1=00 rec2=01 rec3=05a
        [0x01] rec0=1b rec1=00 rec2=03 rec3=026
        [0x02] rec0=22 rec1=00 rec2=07 rec3=036
        [0x03] rec0=23 rec1=00 rec2=04 rec3=026
        [0x04] rec0=23 rec1=00 rec2=02 rec3=06a
        [0x05] rec0=21 rec1=00 rec2=05 rec3=02a
        [0x06] rec0=27 rec1=00 rec2=09 rec3=01e
        [0x07] rec0=0d rec1=00 rec2=08 rec3=000
        [0x08] rec0=08 rec1=00 rec2=08 rec3=001
        [0x09] rec0=ed rec1=09 rec2=88 rec3=795
    tail 0x21732e0d484dd6dd2556f 0x42a00088462060003
Free Block Chain:
  0x6: 0000  00 0a 03 14 80 1e 72 5f 54 6f 5f 52 65 6d 6f 76  ┆      r_To_Remov┆
  0xa: 0000  00 00 00 0d 00 0a 20 20 20 20 70 72 6f 63 65 64  ┆          proced┆