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

⟦cda15033e⟧ TextFile

    Length: 12398 (0x306e)
    Types: TextFile
    Notes: R1k Text-file segment

Derivation

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

TextFile

* Object 1: !MACHINE.INITIALIZE'SPEC
* Object 2: !MACHINE.RELEASE.ENVIRONMENT.D_12_5_0.GOLDEN_INITIALIZE_PROCEDURES.INITIALIZE'SPEC
* The Objects are identical.

* Object 1: !MACHINE.INITIALIZE'BODY
* Object 2: !MACHINE.RELEASE.ENVIRONMENT.D_12_5_0.GOLDEN_INITIALIZE_PROCEDURES.INITIALIZE'BODY
* Delete 45
1     Program.Run ("""!Machine"".Initialize_Dtia;");

* Change 59..61
1            (Caller      => "!Machine.Initialize",
1             Reason      => Error_Reporting.Create_Condition_Name
1                               ("Unhandled_Exception", Error_Reporting.Fatal),
-----
2            (Caller => "!Machine.Initialize",
2             Reason => Error_Reporting.Create_Condition_Name
2                          ("Unhandled_Exception", Error_Reporting.Fatal),

* Object 1: !MACHINE.INITIALIZE_CROSS_COMPILERS'SPEC
* Object 2: !MACHINE.RELEASE.ENVIRONMENT.D_12_5_0.GOLDEN_INITIALIZE_PROCEDURES.INITIALIZE_CROSS_COMPILERS'SPEC
* The Objects are identical.

* Object 1: !MACHINE.INITIALIZE_CROSS_COMPILERS'BODY
* Object 2: !MACHINE.RELEASE.ENVIRONMENT.D_12_5_0.GOLDEN_INITIALIZE_PROCEDURES.INITIALIZE_CROSS_COMPILERS'BODY
* Insert after 0
2 with Debug_Tools;
2 with Error_Reporting;
2 with Io;
2 with Program;
2 with Simple_Status;
2 with String_Utilities;
2 with System_Utilities;
2 

* Change 2..3
1 begin
1     null;
-----
2 
2     File_Name : constant String := "!Machine.Cross_Compilers";
2     File : Io.File_Type;
2 
2     procedure Close is
2     begin
2         Io.Close (File);
2     exception
2         when others =>
2             null;
2     end Close;
2 
2     function Get_First_Token (From : String) return String is
2     begin
2         for Index in From'Range loop
2             if From (Index) = ' ' then
2                 return From (From'First .. Index - 1);
2             end if;
2         end loop;
2         return From;
2     end Get_First_Token;
2 
2     function Get_Remainder (From : String) return String is
2     begin
2         for Index in From'Range loop
2             if From (Index) = ' ' then
2                 return From (Index + 1 .. From'Last);
2             end if;
2         end loop;
2         return "";
2     end Get_Remainder;
2 
2     procedure Start_Compiler (Target_Entry : String) is  
2         Target_Name : constant String := Get_First_Token (Target_Entry);
2         Params : constant String := Get_Remainder (Target_Entry);
2 
2         Caller : constant String :=
2            "!Machine.Initialize_Cross_Compilers." & Target_Name;
2 
2         Context : constant String := "!Targets.Implementation.";
2         Routine : constant String := "Start_Compiler";  
2         Activity : constant String := "!Machine.Release.Current.Activity";
2         Job_Id : Program.Job_Id;
2         Status : Program.Condition;
2 
2         procedure Await_Elaboration is
2         begin  
2             if not Program.Started_Successfully (Status) then
2                 Error_Reporting.Report_Error
2                    (Caller => Caller,
2                     Reason => Error_Reporting.Create_Condition_Name
2                                  ("Unable to start compiler",
2                                   Error_Reporting.Problem),
2                     Explanation => Simple_Status.Display_Message (Status));
2             end if;
2 
2             for I in 1 .. 100 loop
2                 begin
2                     declare
2                         Name : constant String :=
2                            System_Utilities.Job_Name (Job_Id);
2                     begin  
2                         if Name'First =
2                            String_Utilities.Locate (Fragment => Target_Name,
2                                                     Within => Name,
2                                                     Ignore_Case => True) then
2                             return;
2                         end if;
2                         delay 5.0;
2                     end;
2                 exception
2                     when others =>
2                         Error_Reporting.Report_Error
2                            (Caller => Caller,
2                             Reason => Error_Reporting.Create_Condition_Name
2                                          ("Cannot get compiler job name",
2                                           Error_Reporting.Problem),
2                             Explanation =>
2                                Debug_Tools.Get_Exception_Name (True, True));
2                         return;
2                 end;
2             end loop;
2 
2             Error_Reporting.Report_Error
2                (Caller => Caller,
2                 Reason => Error_Reporting.Create_Condition_Name
2                              ("Compiler has not changed its name",
2                               Error_Reporting.Problem),
2                 Explanation => "");
2         end Await_Elaboration;
2     begin
2         if String_Utilities.Locate ("Motorola_68k", Target_Name) /= 0 then
2             -- with Common, Control, Stream, the Start_Compiler procedure
2             -- does not return until all components are started.
2             Program.Run (Program.Current (Subsystem => Context & Target_Name,
2                                           Unit => Routine,
2                                           Parameters => Params,
2                                           Activity => Activity));  
2         else
2             Program.Create_Job
2                (Program.Current (Subsystem => Context & Target_Name,
2                                  Unit => Routine,
2                                  Activity => Activity),  
2                 Job_Id,  
2                 Status);
2             Await_Elaboration;
2         end if;
2     exception
2         when others =>
2             Error_Reporting.Report_Error
2                (Caller => Caller,
2                 Reason => Error_Reporting.Create_Condition_Name
2                              ("Unhandled_Exception", Error_Reporting.Problem),
2                 Explanation => Debug_Tools.Get_Exception_Name (True, True));
2     end Start_Compiler;
2 begin  
2     begin
2         Io.Open (File => File, Mode => Io.In_File, Name => File_Name);
2     exception
2         when Io.Name_Error =>
2             -- file does not exist
2             return;
2     end;
2 
2     begin
2         loop
2             Start_Compiler (String_Utilities.Strip_Leading
2                                (Filler => ' ', From => Io.Get_Line (File)));
2         end loop;
2     exception
2         when Io.End_Error =>
2             Close;
2     end;
2 exception
2     when others =>
2         Close;
2         raise;

* Object 1: !MACHINE.INITIALIZE_DTIA'SPEC
* Object 2: !MACHINE.RELEASE.ENVIRONMENT.D_12_5_0.GOLDEN_INITIALIZE_PROCEDURES.INITIALIZE_DTIA'SPEC
* The Objects are identical.

* Object 1: !MACHINE.INITIALIZE_DTIA'BODY
* Object 2: !MACHINE.RELEASE.ENVIRONMENT.D_12_5_0.GOLDEN_INITIALIZE_PROCEDURES.INITIALIZE_DTIA'BODY
* Change 11..12
1     Activity    : constant String := "!Machine.Release.Current.Activity";
1     Subsystem   : constant String := "!Tools.Dtia_Rpc_Mechanisms";
-----
2     Activity : constant String := "!Machine.Release.Current.Activity";
2     Subsystem : constant String := "!Tools.Dtia_Rpc_Mechanisms";

* Change 14
1     Caller      : constant String := "!Machine.Initialize_Dtia";
-----
2     Caller : constant String := "!Machine.Initialize_Dtia";

* Change 22..23
1                                 Unit      => Elaboration,
1                                 Activity  => Activity);
-----
2                                 Unit => Elaboration,
2                                 Activity => Activity);

* Change 27..29
1     Program.Create_Job (Elaboration_Command,
1                         Job    => Job_Id,  
1                         Status => Status);
-----
2     declare
2         Command : constant String := Elaboration_Command;
2     begin
2         if Command'Length > 0 then
2             Program.Create_Job (Elaboration_Command,
2                                 Job => Job_Id,  
2                                 Status => Status);
2         end if;
2     end;

* Change 41..43
1            (Caller      => Caller,
1             Reason      => Error_Reporting.Create_Condition_Name
1                               ("UNHANDLED EXCEPTION", Error_Reporting.Problem),
-----
2            (Caller => Caller,
2             Reason => Error_Reporting.Create_Condition_Name
2                          ("UNHANDLED EXCEPTION", Error_Reporting.Problem),

* Object 1: !MACHINE.INITIALIZE_NETWORK'SPEC
* Object 2: !MACHINE.RELEASE.ENVIRONMENT.D_12_5_0.GOLDEN_INITIALIZE_PROCEDURES.INITIALIZE_NETWORK'SPEC
* The Objects are identical.

* Object 1: !MACHINE.INITIALIZE_NETWORK'BODY
* Object 2: !MACHINE.RELEASE.ENVIRONMENT.D_12_5_0.GOLDEN_INITIALIZE_PROCEDURES.INITIALIZE_NETWORK'BODY
* Delete 4
1 with Profile;

* Delete 13
1     Profile.Set (Profile.Verbose);

* Change 20..23
1                    (Caller      => "!Machine.Initialize_Network.TCP_IP_Boot",
1                     Reason      => Error_Reporting.Create_Condition_Name
1                                       ("Unhandled_Exception",
1                                        Error_Reporting.Problem),
-----
2                    (Caller => "!Machine.Initialize_Network.TCP_IP_Boot",
2                     Reason => Error_Reporting.Create_Condition_Name
2                                  ("Unhandled_Exception",
2                                   Error_Reporting.Problem),

* Change 35..38
1                    (Caller      => "!Machine.Initialize_Network.FTP",
1                     Reason      => Error_Reporting.Create_Condition_Name
1                                       ("Unhandled_Exception",
1                                        Error_Reporting.Problem),
-----
2                    (Caller => "!Machine.Initialize_Network.FTP",
2                     Reason => Error_Reporting.Create_Condition_Name
2                                  ("Unhandled_Exception",
2                                   Error_Reporting.Problem),

* Change 55..58
1                    (Caller      => "!Machine.Initialize_Network.Archive",
1                     Reason      => Error_Reporting.Create_Condition_Name
1                                       ("Unhandled_Exception",
1                                        Error_Reporting.Problem),
-----
2                    (Caller => "!Machine.Initialize_Network.Archive",
2                     Reason => Error_Reporting.Create_Condition_Name
2                                  ("Unhandled_Exception",
2                                   Error_Reporting.Problem),

* Object 1: !MACHINE.INITIALIZE_TERMINALS'SPEC
* Object 2: !MACHINE.RELEASE.ENVIRONMENT.D_12_5_0.GOLDEN_INITIALIZE_PROCEDURES.INITIALIZE_TERMINALS'SPEC
* The Objects are identical.

* Object 1: !MACHINE.INITIALIZE_TERMINALS'BODY
* Object 2: !MACHINE.RELEASE.ENVIRONMENT.D_12_5_0.GOLDEN_INITIALIZE_PROCEDURES.INITIALIZE_TERMINALS'BODY
* Insert after 5
2     Terminal.Set_Logoff_On_Disconnect (Line => 16, Enabled => False);
2 
2     -- for I in 17 .. 20 loop
2     --    Operator.Enable_Terminal (I);
2     --    Terminal.Set_Disconnect_On_Logoff (Line => I, Enabled => false);
2     -- end loop;
2 

* Change 7
1         for I in 235 .. 249 loop
-----
2         for I in 240 .. 244 loop
2 --        for I in 240 .. 240 loop

* Change 9
1             Terminal.Set_Logoff_On_Disconnect (Line => I, Enabled => True);
-----
2             Terminal.Set_Logoff_On_Disconnect (Line => I, Enabled => False);

* Object 1: !MACHINE.INITIALIZE_MAIL'SPEC
* Object 2: !MACHINE.RELEASE.ENVIRONMENT.D_12_5_0.GOLDEN_INITIALIZE_PROCEDURES.INITIALIZE_MAIL'SPEC
* The Objects are identical.

* Object 1: !MACHINE.INITIALIZE_MAIL'BODY
* Object 2: !MACHINE.RELEASE.ENVIRONMENT.D_12_5_0.GOLDEN_INITIALIZE_PROCEDURES.INITIALIZE_MAIL'BODY
* Insert after 0
2 with Program;
2 with Debug_Tools;
2 with Error_Reporting;

* Change 3
1     null;
-----
2     Program.Run ("""!Machine.Transfer"".Initialize");
2     Program.Run ("""!Machine.Transfer.Distribute"".Initialize");
2 exception
2     when others =>
2         Error_Reporting.Report_Error
2            (Caller => "!Machine.Initialize_Mail",
2             Reason => Error_Reporting.Create_Condition_Name
2                          ("Unhandled_Exception", Error_Reporting.Problem),
2             Explanation => Debug_Tools.Get_Exception_Name (True, True))