DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

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 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ B T

⟦1e3b5b5f5⟧ TextFile

    Length: 23375 (0x5b4f)
    Types: TextFile
    Names: »B«

Derivation

└─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS 
    └─ ⟦91c658230⟧ »DATA« 
        └─⟦5d656759a⟧ 
            └─⟦this⟧ 

TextFile

with Directory_Tools;
with Rxi_Install;
use Rxi_Install;
with Rxi_String;
use Rxi_String;
with String_Utilities;
use String_Utilities;

with System_Utilities;

package body Release is

    Lf : constant Character := Ascii.Lf;

    Terminal_Type_Has_No_Workation_Files : exception;

    type File_Info_Array     is array (Positive range <>) of File_Info;
    type File_Info_Array_Ptr is access File_Info_Array;

------------------------------------------------------------------------------
-- Terminal recognition codes; keep them in order for easy visual reference
--  and don't every assign the same code to two names.
------------------------------------------------------------------------------

    Vt100_Id     : constant := 0;
    Xsun3_Id     : constant := 1;
    Xsun4_Id     : constant := 2;
    Xrtus_Id     : constant := 3;   -- Obsolete/unsupported now 03/20/90
    Xdecus_Id    : constant := 4;
    Xncd_Id      : constant := 5;
    Xnews3_Id    : constant := 6;
    Xnews4_Id    : constant := 7;
    Xhp46021a_Id : constant := 8;
    Xr6us_Id     : constant := 9;
    Xapollo3_Id  : constant := 10;
    Xultus_Id    : constant := 11;
    Xapollom_Id  : constant := 12;
    Xapus_Id     : constant := 13;

--\f

------------------------------------------------------------------------------
-- "Real" Workstations - Keep these before the "Parasite" X Terminals
--
-- These are R1000 terminal types that correspond to "real" computers.
-- Ie. They declare and initialize package state that is shared with one or
-- more of the "parasite" terminal packages below; and, in order for proper
-- initialization to occur during package body elaboration they must textually
-- preceed the parasite packages below.
------------------------------------------------------------------------------

------------------------------------------------------------------------------
----SUN keyboard 3
------------------------------------------------------------------------------

    package Sun3_X11r3 is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info;
        Install     : File_Info_Array_Ptr;
        Source      : File_Info_Array_Ptr;
    end Sun3_X11r3;

    package body Sun3_X11r3 is separate;

    package Sun3_X11r3_Sparc is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info           := Sun3_X11r3.Recognition;
        Install     : File_Info_Array_Ptr := Sun3_X11r3.Install;
        Source      : File_Info_Array_Ptr := Sun3_X11r3.Source;
    end Sun3_X11r3_Sparc;

    package body Sun3_X11r3_Sparc is separate;

    package News3_V2_0 is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info;
        Install     : File_Info_Array_Ptr;
        Source      : File_Info_Array_Ptr;
    end News3_V2_0;

    package body News3_V2_0 is separate;

    package News3_V2_0_Sparc is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info           := News3_V2_0.Recognition;
        Install     : File_Info_Array_Ptr := News3_V2_0.Install;
        Source      : File_Info_Array_Ptr := News3_V2_0.Source;
    end News3_V2_0_Sparc;

    package body News3_V2_0_Sparc is separate;

------------------------------------------------------------------------------
----SUN keyboard 4
------------------------------------------------------------------------------

    package Sun4_X11r3 is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info           := Sun3_X11r3.Recognition;
        Install     : File_Info_Array_Ptr := Sun3_X11r3.Install;
        Source      : File_Info_Array_Ptr := Sun3_X11r3.Source;
    end Sun4_X11r3;

    package body Sun4_X11r3 is separate;

    package Sun4_X11r3_Sparc is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info           := Sun3_X11r3.Recognition;
        Install     : File_Info_Array_Ptr := Sun3_X11r3.Install;
        Source      : File_Info_Array_Ptr := Sun3_X11r3.Source;
    end Sun4_X11r3_Sparc;

    package body Sun4_X11r3_Sparc is separate;

    package News4_V2_0 is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info           := News3_V2_0.Recognition;
        Install     : File_Info_Array_Ptr := News3_V2_0.Install;
        Source      : File_Info_Array_Ptr := News3_V2_0.Source;
    end News4_V2_0;

    package body News4_V2_0 is separate;

    package News4_V2_0_Sparc is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info           := News3_V2_0.Recognition;
        Install     : File_Info_Array_Ptr := News3_V2_0.Install;
        Source      : File_Info_Array_Ptr := News3_V2_0.Source;
    end News4_V2_0_Sparc;

    package body News4_V2_0_Sparc is separate;

------------------------------------------------------------------------------
----IBM
------------------------------------------------------------------------------

    package R6us_Aix3_1 is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info;
        Install     : File_Info_Array_Ptr;
        Source      : File_Info_Array_Ptr;
    end R6us_Aix3_1;

    package body R6us_Aix3_1 is separate;

------------------------------------------------------------------------------
----DEC
------------------------------------------------------------------------------

    package Decus_Vms5_1_Multinet203 is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info;
        Install     : File_Info_Array_Ptr;
        Source      : File_Info_Array_Ptr;
    end Decus_Vms5_1_Multinet203;

    package body Decus_Vms5_1_Multinet203 is separate;


    package Decus_Vms5_1_Wollongong502 is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info := Decus_Vms5_1_Multinet203.Recognition;
        Install     : File_Info_Array_Ptr := Decus_Vms5_1_Multinet203.Install;
        Source      : File_Info_Array_Ptr := Decus_Vms5_1_Multinet203.Source;
    end Decus_Vms5_1_Wollongong502;

    package body Decus_Vms5_1_Wollongong502 is
    begin

        Keyboard           := Decus_Vms5_1_Multinet203.Keyboard;
        Keyboard.R1000_Dir := Hs ("X_Vms5_1_Wollongong502");

    end Decus_Vms5_1_Wollongong502;

    package Ultus_Ds_Ultrix4_1 is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info;
        Install     : File_Info_Array_Ptr;
        Source      : File_Info_Array_Ptr;
    end Ultus_Ds_Ultrix4_1;

    package body Ultus_Ds_Ultrix4_1 is separate;

    package Ultus_Vs_Ultrix4_1 is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info;
        Install     : File_Info_Array_Ptr;
        Source      : File_Info_Array_Ptr;
    end Ultus_Vs_Ultrix4_1;

    package body Ultus_Vs_Ultrix4_1 is separate;

------------------------------------------------------------------------------
----HP
------------------------------------------------------------------------------

    package Hp46021a_Hpux7_0 is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info;
        Install     : File_Info_Array_Ptr;
        Source      : File_Info_Array_Ptr;
    end Hp46021a_Hpux7_0;

    package body Hp46021a_Hpux7_0 is separate;

------------------------------------------------------------------------------
-- APOLLO
------------------------------------------------------------------------------

    package Apollo3_Sr10_2_Unix is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info;
        Install     : File_Info_Array_Ptr;
        Source      : File_Info_Array_Ptr;
    end Apollo3_Sr10_2_Unix;

    package body Apollo3_Sr10_2_Unix is separate;

    package Apollom_Sr10_2_Unix is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info;
        Install     : File_Info_Array_Ptr;
        Source      : File_Info_Array_Ptr;
    end Apollom_Sr10_2_Unix;

    package body Apollom_Sr10_2_Unix is separate;

------------------------------------------------------------------------------
-- APPLE UHIX
------------------------------------------------------------------------------

    package Apus_Aux4_0 is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info;
        Install     : File_Info_Array_Ptr;
        Source      : File_Info_Array_Ptr;
    end Apus_Aux4_0;

    package body Apus_Aux4_0 is separate;

--\f

------------------------------------------------------------------------------
-- "Parasite" Workstations - Keep these after the "Real" Workstations
--
-- These are R1000 terminal types that correspond to things that aren't "real"
-- computers.  Ie. They share package state with one or more of the above
-- packages and in order for proper initialization to occur during package
-- body elaboration they must textually follow the packages above.
------------------------------------------------------------------------------

------------------------------------------------------------------------------
----NCD
------------------------------------------------------------------------------

    package Ncd_R1000 is
        Keyboard_Sun_X11r3            : Keyboard_Info;
        Keyboard_Sun_X11r3_Sparc      : Keyboard_Info;
        Keyboard_Xnews_V2_0           : Keyboard_Info;
        Keyboard_Xnews_V2_0_Sparc     : Keyboard_Info;
        Keyboard_Aix3_1               : Keyboard_Info;
        Keyboard_Vms5_1_Multinet203   : Keyboard_Info;
        Keyboard_Vms5_1_Wollongong502 : Keyboard_Info;
        Keyboard_Ultrix4_1            : Keyboard_Info;
        Keyboard_Hpux7_0              : Keyboard_Info;
        Keyboard_Sr10_2_Unix          : Keyboard_Info;
    end Ncd_R1000;

    package body Ncd_R1000 is separate;

--\f

    function My_Sun return String is
------------------------------------------------------------------------------
-- Return the string name of the appropriate Sun to use for FTP.
-- Note: Do *NOT* use "igor" here.   It ties up the network something fierce.
-- Always use the name of a non-file-server.
------------------------------------------------------------------------------
    begin
        if System_Utilities.User_Name = "GEB" then
            return "amber";         -- GEB uses amber
        else
            return "rutabaga";      -- Other people use some other machine
        end if;
    end My_Sun;

--\f

    package body Info is separate;

--\f

    function Supported_Keyboards (Terminal : Terminal_Type)  
                                 return Keyboard_Info is
    begin
        case Terminal is

----SUN

            when Xsun3_X11r3 =>
                return Sun3_X11r3.Keyboard;

            when Xsun3_X11r3_Sparc =>
                return Sun3_X11r3_Sparc.Keyboard;

            when Xsun4_X11r3 =>
                return Sun4_X11r3.Keyboard;

            when Xsun4_X11r3_Sparc =>
                return Sun4_X11r3_Sparc.Keyboard;

            when Xnews3_V2_0 =>
                return News3_V2_0.Keyboard;

            when Xnews3_V2_0_Sparc =>
                return News3_V2_0_Sparc.Keyboard;

            when Xnews4_V2_0 =>
                return News4_V2_0.Keyboard;

            when Xnews4_V2_0_Sparc =>
                return News4_V2_0_Sparc.Keyboard;

----APPLE

            when Xapus_Aux4_0 =>
                return Apus_Aux4_0.Keyboard;

----IBM

            when Xr6us_Aix3_1 =>
                return R6us_Aix3_1.Keyboard;

----DEC

            when Xdecus_Vms5_1_Multinet203 =>
                return Decus_Vms5_1_Multinet203.Keyboard;

            when Xdecus_Vms5_1_Wollongong502 =>
                return Decus_Vms5_1_Wollongong502.Keyboard;

            when Xultus_Ds_Ultrix4_1 =>
                return Ultus_Ds_Ultrix4_1.Keyboard;

            when Xultus_Vs_Ultrix4_1 =>
                return Ultus_Vs_Ultrix4_1.Keyboard;

----HP

            when Xhp46021a_Hpux7_0 =>
                return Hp46021a_Hpux7_0.Keyboard;

----APOLLO

            when Xapollo3_Sr10_2_Unix =>
                return Apollo3_Sr10_2_Unix.Keyboard;

            when Xapollom_Sr10_2_Unix =>
                return Apollom_Sr10_2_Unix.Keyboard;

----NCD

            when Xncd_Sun_X11r3 =>
                return Ncd_R1000.Keyboard_Sun_X11r3;

            when Xncd_Sun_X11r3_Sparc =>
                return Ncd_R1000.Keyboard_Sun_X11r3_Sparc;

            when Xncd_Xnews_V2_0 =>
                return Ncd_R1000.Keyboard_Xnews_V2_0;

            when Xncd_Xnews_V2_0_Sparc =>
                return Ncd_R1000.Keyboard_Xnews_V2_0_Sparc;

            when Xncd_Aix3_1 =>
                return Ncd_R1000.Keyboard_Aix3_1;

            when Xncd_Vms5_1_Multinet203 =>
                return Ncd_R1000.Keyboard_Vms5_1_Multinet203;

            when Xncd_Vms5_1_Wollongong502 =>
                return Ncd_R1000.Keyboard_Vms5_1_Wollongong502;

            when Xncd_Ds_Ultrix4_1 | Xncd_Vs_Ultrix4_1 =>
                return Ncd_R1000.Keyboard_Ultrix4_1;

            when Xncd_Hpux7_0 =>
                return Ncd_R1000.Keyboard_Hpux7_0;

            when Xncd_Sr10_2_Unix =>
                return Ncd_R1000.Keyboard_Sr10_2_Unix;

        end case;

    end Supported_Keyboards;

--\f

    function Recognition_File (Terminal : Terminal_Type) return File_Info is
    begin
        case Terminal is

----SUN

            when Xsun3_X11r3 | Xncd_Sun_X11r3 =>  
                return Sun3_X11r3.Recognition;

            when Xsun3_X11r3_Sparc | Xncd_Sun_X11r3_Sparc =>  
                return Sun3_X11r3_Sparc.Recognition;

            when Xsun4_X11r3 =>
                return Sun4_X11r3.Recognition;

            when Xsun4_X11r3_Sparc =>
                return Sun4_X11r3_Sparc.Recognition;

            when Xnews3_V2_0 | Xncd_Xnews_V2_0 =>
                return News3_V2_0.Recognition;

            when Xnews3_V2_0_Sparc | Xncd_Xnews_V2_0_Sparc =>
                return News3_V2_0_Sparc.Recognition;

            when Xnews4_V2_0 =>
                return News4_V2_0.Recognition;

            when Xnews4_V2_0_Sparc =>
                return News4_V2_0_Sparc.Recognition;

----APPLE

            when Xapus_Aux4_0 =>
                return Apus_Aux4_0.Recognition;

----IBM

            when Xr6us_Aix3_1 | Xncd_Aix3_1 =>
                return R6us_Aix3_1.Recognition;

----DEC

            when Xdecus_Vms5_1_Multinet203 | Xncd_Vms5_1_Multinet203 =>
                return Decus_Vms5_1_Multinet203.Recognition;

            when Xdecus_Vms5_1_Wollongong502 | Xncd_Vms5_1_Wollongong502 =>
                return Decus_Vms5_1_Wollongong502.Recognition;

            when Xultus_Ds_Ultrix4_1 | Xncd_Ds_Ultrix4_1 =>  
                return Ultus_Ds_Ultrix4_1.Recognition;

            when Xultus_Vs_Ultrix4_1 | Xncd_Vs_Ultrix4_1 =>
                return Ultus_Vs_Ultrix4_1.Recognition;

----HP

            when Xhp46021a_Hpux7_0 | Xncd_Hpux7_0 =>
                return Hp46021a_Hpux7_0.Recognition;

----APOLLO

            when Xapollo3_Sr10_2_Unix | Xncd_Sr10_2_Unix =>
                return Apollo3_Sr10_2_Unix.Recognition;
            when Xapollom_Sr10_2_Unix =>
                return Apollom_Sr10_2_Unix.Recognition;

----NCD -- see above.

        end case;

    end Recognition_File;

--\f

    function Source_Length (Terminal : Terminal_Type) return Natural is
    begin
        case Terminal is

----SUN

            when Xsun3_X11r3 | Xncd_Sun_X11r3 =>
                return Sun3_X11r3.Source'Length;

            when Xsun3_X11r3_Sparc | Xncd_Sun_X11r3_Sparc =>
                return Sun3_X11r3_Sparc.Source'Length;

            when Xsun4_X11r3 =>
                return Sun4_X11r3.Source'Length;

            when Xsun4_X11r3_Sparc =>
                return Sun4_X11r3_Sparc.Source'Length;

            when Xnews3_V2_0 | Xncd_Xnews_V2_0 =>
                return News3_V2_0.Source'Length;

            when Xnews3_V2_0_Sparc | Xncd_Xnews_V2_0_Sparc =>
                return News3_V2_0_Sparc.Source'Length;

            when Xnews4_V2_0 =>
                return News4_V2_0.Source'Length;

            when Xnews4_V2_0_Sparc =>
                return News4_V2_0_Sparc.Source'Length;

----APPLE

            when Xapus_Aux4_0 =>
                return Apus_Aux4_0.Source'Length;

----IBM

            when Xr6us_Aix3_1 | Xncd_Aix3_1 =>
                return R6us_Aix3_1.Source'Length;

----DEC

            when Xdecus_Vms5_1_Multinet203 | Xncd_Vms5_1_Multinet203 =>
                return Decus_Vms5_1_Multinet203.Source'Length;

            when Xdecus_Vms5_1_Wollongong502 | Xncd_Vms5_1_Wollongong502 =>
                return Decus_Vms5_1_Wollongong502.Source'Length;

            when Xultus_Ds_Ultrix4_1 | Xncd_Ds_Ultrix4_1 =>  
                return Ultus_Ds_Ultrix4_1.Source'Length;

            when Xultus_Vs_Ultrix4_1 | Xncd_Vs_Ultrix4_1 =>
                return Ultus_Vs_Ultrix4_1.Source'Length;

----HP

            when Xhp46021a_Hpux7_0 | Xncd_Hpux7_0 =>
                return Hp46021a_Hpux7_0.Source'Length;

----APOLLO

            when Xapollo3_Sr10_2_Unix | Xncd_Sr10_2_Unix =>
                return Apollo3_Sr10_2_Unix.Source'Length;

            when Xapollom_Sr10_2_Unix =>
                return Apollom_Sr10_2_Unix.Source'Length;

----NCD -- see above.

        end case;

    end Source_Length;

--\f

    function Install_Length (Terminal : Terminal_Type) return Natural is
    begin
        case Terminal is

----SUN

            when Xsun3_X11r3 | Xncd_Sun_X11r3 =>
                return Sun3_X11r3.Install'Length;

            when Xsun3_X11r3_Sparc | Xncd_Sun_X11r3_Sparc =>
                return Sun3_X11r3_Sparc.Install'Length;

            when Xsun4_X11r3 =>
                return Sun4_X11r3.Install'Length;

            when Xsun4_X11r3_Sparc =>
                return Sun4_X11r3_Sparc.Install'Length;

            when Xnews3_V2_0 | Xncd_Xnews_V2_0 =>
                return News3_V2_0.Install'Length;

            when Xnews3_V2_0_Sparc | Xncd_Xnews_V2_0_Sparc =>
                return News3_V2_0_Sparc.Install'Length;

            when Xnews4_V2_0 =>
                return News4_V2_0.Install'Length;

            when Xnews4_V2_0_Sparc =>
                return News4_V2_0_Sparc.Install'Length;

----APPLE

            when Xapus_Aux4_0 =>
                return Apus_Aux4_0.Install'Length;

----IBM

            when Xr6us_Aix3_1 | Xncd_Aix3_1 =>
                return R6us_Aix3_1.Install'Length;

----DEC

            when Xdecus_Vms5_1_Multinet203 | Xncd_Vms5_1_Multinet203 =>
                return Decus_Vms5_1_Multinet203.Install'Length;

            when Xdecus_Vms5_1_Wollongong502 | Xncd_Vms5_1_Wollongong502 =>
                return Decus_Vms5_1_Wollongong502.Install'Length;

            when Xultus_Ds_Ultrix4_1 | Xncd_Ds_Ultrix4_1 =>  
                return Ultus_Ds_Ultrix4_1.Install'Length;

            when Xultus_Vs_Ultrix4_1 | Xncd_Vs_Ultrix4_1 =>
                return Ultus_Vs_Ultrix4_1.Install'Length;

----HP

            when Xhp46021a_Hpux7_0 | Xncd_Hpux7_0 =>
                return Hp46021a_Hpux7_0.Install'Length;

----APOLLO

            when Xapollo3_Sr10_2_Unix | Xncd_Sr10_2_Unix =>
                return Apollo3_Sr10_2_Unix.Install'Length;

            when Xapollom_Sr10_2_Unix =>
                return Apollom_Sr10_2_Unix.Install'Length;

----NCD -- see above.

        end case;

    end Install_Length;

--\f

    function Source (Terminal : Terminal_Type;  
                     File_No  : Positive) return File_Info is
    begin
        case Terminal is

----SUN

            when Xsun3_X11r3 | Xncd_Sun_X11r3 =>
                return Sun3_X11r3.Source (File_No);

            when Xsun3_X11r3_Sparc | Xncd_Sun_X11r3_Sparc =>
                return Sun3_X11r3_Sparc.Source (File_No);

            when Xsun4_X11r3 =>
                return Sun4_X11r3.Source (File_No);

            when Xsun4_X11r3_Sparc =>
                return Sun4_X11r3_Sparc.Source (File_No);

            when Xnews3_V2_0 | Xncd_Xnews_V2_0 =>
                return News3_V2_0.Source (File_No);

            when Xnews3_V2_0_Sparc | Xncd_Xnews_V2_0_Sparc =>
                return News3_V2_0_Sparc.Source (File_No);

            when Xnews4_V2_0 =>
                return News4_V2_0.Source (File_No);

            when Xnews4_V2_0_Sparc =>
                return News4_V2_0_Sparc.Source (File_No);

----APPLE

            when Xapus_Aux4_0 =>
                return Apus_Aux4_0.Source (File_No);

----IBM

            when Xr6us_Aix3_1 | Xncd_Aix3_1 =>
                return R6us_Aix3_1.Source (File_No);

----DEC

            when Xdecus_Vms5_1_Multinet203 | Xncd_Vms5_1_Multinet203 =>
                return Decus_Vms5_1_Multinet203.Source (File_No);

            when Xdecus_Vms5_1_Wollongong502 | Xncd_Vms5_1_Wollongong502 =>
                return Decus_Vms5_1_Wollongong502.Source (File_No);

            when Xultus_Ds_Ultrix4_1 | Xncd_Ds_Ultrix4_1 =>  
                return Ultus_Ds_Ultrix4_1.Source (File_No);

            when Xultus_Vs_Ultrix4_1 | Xncd_Vs_Ultrix4_1 =>
                return Ultus_Vs_Ultrix4_1.Source (File_No);

----HP

            when Xhp46021a_Hpux7_0 | Xncd_Hpux7_0 =>
                return Hp46021a_Hpux7_0.Source (File_No);

----APOLLO

            when Xapollo3_Sr10_2_Unix | Xncd_Sr10_2_Unix =>
                return Apollo3_Sr10_2_Unix.Source (File_No);

            when Xapollom_Sr10_2_Unix =>
                return Apollom_Sr10_2_Unix.Source (File_No);

----NCD -- see above.

        end case;

    end Source;

--\f

    function Install (Terminal : Terminal_Type;  
                      File_No  : Positive) return File_Info is
    begin
        case Terminal is

----SUN

            when Xsun3_X11r3 | Xncd_Sun_X11r3 =>
                return Sun3_X11r3.Install (File_No);

            when Xsun3_X11r3_Sparc | Xncd_Sun_X11r3_Sparc =>
                return Sun3_X11r3_Sparc.Install (File_No);

            when Xsun4_X11r3 =>
                return Sun4_X11r3.Install (File_No);

            when Xsun4_X11r3_Sparc =>
                return Sun4_X11r3_Sparc.Install (File_No);

            when Xnews3_V2_0 | Xncd_Xnews_V2_0 =>
                return News3_V2_0.Install (File_No);

            when Xnews3_V2_0_Sparc | Xncd_Xnews_V2_0_Sparc =>
                return News3_V2_0_Sparc.Install (File_No);

            when Xnews4_V2_0 =>
                return News4_V2_0.Install (File_No);

            when Xnews4_V2_0_Sparc =>
                return News4_V2_0_Sparc.Install (File_No);

----APPLE

            when Xapus_Aux4_0 =>
                return Apus_Aux4_0.Install (File_No);

----IBM

            when Xr6us_Aix3_1 | Xncd_Aix3_1 =>
                return R6us_Aix3_1.Install (File_No);

----DEC

            when Xdecus_Vms5_1_Multinet203 | Xncd_Vms5_1_Multinet203 =>
                return Decus_Vms5_1_Multinet203.Install (File_No);

            when Xdecus_Vms5_1_Wollongong502 | Xncd_Vms5_1_Wollongong502 =>
                return Decus_Vms5_1_Wollongong502.Install (File_No);

            when Xultus_Ds_Ultrix4_1 | Xncd_Ds_Ultrix4_1 =>  
                return Ultus_Ds_Ultrix4_1.Install (File_No);

            when Xultus_Vs_Ultrix4_1 | Xncd_Vs_Ultrix4_1 =>
                return Ultus_Vs_Ultrix4_1.Install (File_No);

----HP

            when Xhp46021a_Hpux7_0 | Xncd_Hpux7_0 =>
                return Hp46021a_Hpux7_0.Install (File_No);

----APOLLO

            when Xapollo3_Sr10_2_Unix | Xncd_Sr10_2_Unix =>
                return Apollo3_Sr10_2_Unix.Install (File_No);

            when Xapollom_Sr10_2_Unix =>
                return Apollom_Sr10_2_Unix.Install (File_No);

----NCD -- see above.

        end case;

    end Install;

--\f

end Release;