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

⟦efb8d3636⟧ TextFile

    Length: 46696 (0xb668)
    Types: TextFile
    Names: »B«

Derivation

└─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3
    └─ ⟦fc9b38f02⟧ »DATA« 
        └─⟦8e9e227a9⟧ 
            └─⟦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;   -- Obsolete/unsupported now 06/23/92
    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;
    Xsun101_Id   : constant := 14;
    Xnews101_Id  : constant := 15;

--\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 type-3 keyboards are unsupported as of 06/23/92
-- ------------------------------------------------------------------------------
-- ----SUN keyboard 3 -- unsupported 06/23/92
-- ------------------------------------------------------------------------------
--
--     package Sun3_X11r5 is
--         Keyboard    : Keyboard_Info;
--         Recognition : File_Info;
--         Install     : File_Info_Array_Ptr;
--         Source      : File_Info_Array_Ptr;
--     end Sun3_X11r5;
--
--     package body Sun3_X11r5 is
--     begin
--
--         Keyboard := (Name       => Hs ("XSun3"),
--                      Id         => Xsun3_Id,
--                      Comment1   => Hs ("Sun; keyboard model 3"),
--                      Comment2   => null,
--                      R1000_Dir  => Hs ("X_Sun_X11R5"),
--                      Source_Dir => Hs ("Src_Sun_X11R5"),
--                      Lines      => 40,
--                      Columns    => 80,
--                      Tt_Extra   => Hs ("XSun:XSun3 XRTERM 40 80"),
--                      Has_Source => True);
--
--     end Sun3_X11r5;
--
--     package Sun3_X11r5_Sparc is
--         Keyboard    : Keyboard_Info;
--         Recognition : File_Info           := Sun3_X11r5.Recognition;
--         Install     : File_Info_Array_Ptr := Sun3_X11r5.Install;
--         Source      : File_Info_Array_Ptr := Sun3_X11r5.Source;
--     end Sun3_X11r5_Sparc;
--
--     package body Sun3_X11r5_Sparc is
--     begin
--
--         Keyboard := (Name       => Hs ("XSun3"),
--                      Id         => Xsun3_Id,
--                      Comment1   => Hs ("Sun; keyboard model 3"),
--                      Comment2   => null,
--                      R1000_Dir  => Hs ("X_Sun_X11R5_Sparc"),
--                      Source_Dir => Hs ("Src_Sun_X11R5"),
--                      Lines      => 40,
--                      Columns    => 80,
--                      Tt_Extra   => null,
--                      Has_Source => True);
--
--     end Sun3_X11r5_Sparc;
--
--     package News3_V3_0 is
--         Keyboard    : Keyboard_Info;
--         Recognition : File_Info;
--         Install     : File_Info_Array_Ptr;
--         Source      : File_Info_Array_Ptr;
--     end News3_V3_0;
--
--     package body News3_V3_0 is
--     begin
--
--         Keyboard := (Name       => Hs ("XNews3"),
--                      Id         => Xnews3_Id,
--                      Comment1   => Hs ("Sun X/NeWS 3.0; keyboard model 3"),
--                      Comment2   => null,
--                      R1000_Dir  => Hs ("X_Xnews3_0"),
--                      Source_Dir => Hs ("Src_Xnews3_0"),
--                      Lines      => 40,
--                      Columns    => 80,
--                      Tt_Extra   => null,
--                      Has_Source => True);
--
--     end News3_V3_0;
--
--     package News3_V3_0_Sparc is
--         Keyboard    : Keyboard_Info;
--         Recognition : File_Info           := News3_V3_0.Recognition;
--         Install     : File_Info_Array_Ptr := News3_V3_0.Install;
--         Source      : File_Info_Array_Ptr := News3_V3_0.Source;
--     end News3_V3_0_Sparc;
--
--     package body News3_V3_0_Sparc is
--     begin
--
--         Keyboard := (Name       => Hs ("XNews3"),
--                      Id         => Xnews3_Id,
--                      Comment1   => Hs ("Sun X/NeWS 3.0; keyboard model 3"),
--                      Comment2   => null,
--                      R1000_Dir  => Hs ("X_Xnews3_0_Sparc"),
--                      Source_Dir => Hs ("Src_Xnews3_0"),
--                      Lines      => 40,
--                      Columns    => 80,
--                      Tt_Extra   => null,
--                      Has_Source => True);
--
--     end News3_V3_0_Sparc;

--\f

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

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

    package body Sun4_X11r5_Sparc is separate;

    package Sun101_X11r5_Sparc is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info           := Sun4_X11r5_Sparc.Recognition;
        Install     : File_Info_Array_Ptr := Sun4_X11r5_Sparc.Install;
        Source      : File_Info_Array_Ptr := Sun4_X11r5_Sparc.Source;
    end Sun101_X11r5_Sparc;

    package body Sun101_X11r5_Sparc is separate;

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

    package body News4_V3_0_Sparc is separate;

    package News101_V3_0_Sparc is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info           := News4_V3_0_Sparc.Recognition;
        Install     : File_Info_Array_Ptr := News4_V3_0_Sparc.Install;
        Source      : File_Info_Array_Ptr := News4_V3_0_Sparc.Source;
    end News101_V3_0_Sparc;

    package body News101_V3_0_Sparc is separate;

----Sun model-3 systems are unsupported as of 06/23/92
--
--     package Sun4_X11r5 is
--         Keyboard    : Keyboard_Info;
--         Recognition : File_Info           := Sun3_X11r5.Recognition;
--         Install     : File_Info_Array_Ptr := Sun3_X11r5.Install;
--         Source      : File_Info_Array_Ptr := Sun3_X11r5.Source;
--     end Sun4_X11r5;
--
--     package body Sun4_X11r5 is
--     begin
--
--         Keyboard :=
--            (Name       => Hs ("XSun4"),
--             Id         => Xsun4_Id,
--             Comment1   => Hs ("Sun; keyboard model 4"),
--             Comment2   => null,
--             R1000_Dir  => Hs ("X_Sun_X11R5"),
--             Source_Dir => Hs ("Src_Sun_X11R5"),
--             Lines      => 40,
--             Columns    => 80,
--             Tt_Extra   => null,
--             Has_Source => True);
--
--     end Sun4_X11r5;
--
--     package News4_V3_0 is
--         Keyboard    : Keyboard_Info;
--         Recognition : File_Info           := News3_V3_0.Recognition;
--         Install     : File_Info_Array_Ptr := News3_V3_0.Install;
--         Source      : File_Info_Array_Ptr := News3_V3_0.Source;
--     end News4_V3_0;
--
--     package body News4_V3_0 is
--     begin
--
--         Keyboard :=
--            (Name       => Hs ("XNews4"),
--             Id         => Xnews4_Id,
--             Comment1   => Hs ("Sun X/NeWS 3.0; keyboard model 4"),
--             Comment2   => null,
--             R1000_Dir  => Hs ("X_Xnews3_0"),
--             Source_Dir => Hs ("Src_Xnews3_0"),
--             Lines      => 40,
--             Columns    => 80,
--             Tt_Extra   => null,
--             Has_Source => True);
--
--     end News4_V3_0;

--\f

------------------------------------------------------------------------------
----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;

--\f

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

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

    package body Decus_Vms5_4_Wollongong502 is separate;

    package Decus_Vms5_4_Ultrixconnection13a is
        Keyboard    : Keyboard_Info;
        Recognition : File_Info := Decus_Vms5_4_Wollongong502.Recognition;
        Install     : File_Info_Array_Ptr := Decus_Vms5_4_Wollongong502.Install;
        Source      : File_Info_Array_Ptr := Decus_Vms5_4_Wollongong502.Source;
    end Decus_Vms5_4_Ultrixconnection13a;

    package body Decus_Vms5_4_Ultrixconnection13a is separate;

    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;

--\f

------------------------------------------------------------------------------
----DEC -- unsupported
------------------------------------------------------------------------------
--
-- --Multi-Net is unsupported as of 06/23/92
--
--     package Decus_Vms5_4_Multinet203 is
--         Keyboard    : Keyboard_Info;
--         Recognition : File_Info;
--         Install     : File_Info_Array_Ptr;
--         Source      : File_Info_Array_Ptr;
--     end Decus_Vms5_4_Multinet203;
--
--     package body Decus_Vms5_4_Multinet203 is
--     begin
--
--         Keyboard :=
--            (Name       => Hs ("XDecUS"),
--             Id         => Xdecus_Id,
--             Comment1   => Hs ("DECwindows; VAXstation (VMS), US keyboard"),
--             Comment2   => Hs ("#ifdef MULTINET" & Lf &
--                               "    ""MultiNet 2.0.3 Rev. D or later""," & Lf &
--                               "#endif" & Lf &
--                               "#ifdef WOLLONGONG" & Lf &
--                               "    ""Wollongong 5.0.2 or later""," & Lf &
--                               "#endif"),
--             R1000_Dir  => Hs ("X_Vms5_4_Multinet203"),
--             Source_Dir => Hs ("Src_Vms5_4"),
--             Lines      => 40,
--             Columns    => 80,
--             Tt_Extra   => null,
--             Has_Source => True);
--
--         Recognition :=
--            (File_Type                  => Text,
--             Master_File | Install_File => Hs ("_rcg.h"));
--
--         Install :=
--            new File_Info_Array'
--                   (
--
--                    (File_Type                 => Text,
--                    Master_File | Install_File => Hs ("Makefile.Com")),
--
--                    (File_Type                  => Text,
--                     Master_File | Install_File => Hs ("Backup.Com")),
--
--                    (File_Type                  => Binary,
--                     Master_File | Install_File => Hs ("rxi-backup.exe")),
--
--                    (File_Type                  => Text,
--                     Master_File | Install_File => Hs ("cvt_exe_to_backup.c")),
--
--                    (File_Type                  => Binary,
--                     Master_File | Install_File => Hs ("cvt_exe_to_backup.exe"))
--                    );
--
--         Source :=
--            new
--               File_Info_Array'
--                  (
--
--                   (File_Type                 => Binary,
--                   Master_File | Install_File => Hs ("multi.olb")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMCommand.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMCommandI.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMCommand.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMCommandP.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMForm.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMForm.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMFormP.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("Makefile.Com")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMLabel.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMLabel.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMLabelP.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMShell.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMShell.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMShellP.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMSub.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMSub.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RMSubP.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RXI.Xdefaults")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("RXI_Env_Menu")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("VTPrsTbl.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("VTparse.def")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("VTparse.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("button.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("charproc.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("cursor.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("cvt_backup_to_exe.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("cvt_exe_to_backup.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("data.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("data.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("error.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-wr-15.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-wr-16.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-wr-17.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-wr-22.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-wb-15.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-wb-16.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-wb-17.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-wb-22.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-b-11.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-b-12.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-b-13.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-b-14.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-r-11.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-r-12.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-r-13.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("fixed-screen-r-14.bdf")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("ftp.file-list")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("gray.ic")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("hilite.ic")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("input.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("main.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("main.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("menu.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("menu.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("misc.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("ptyx.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("ratmenu.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("ratmenu.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("ratmenuP.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("rxi-man.tmpl")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("rxi_detached.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("rxios.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("rxitelnet.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("rxitelnet.h")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("rxitelnet.save")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("screen.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("scrollbar.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("tabs.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("termcap")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("terminfo")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("util.c")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("wait.ic")),
--
--                   (File_Type                  => Text,
--                    Master_File | Install_File => Hs ("waitmask.ic")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/AsciiSink.c"),
--                    Install_File => Hs ("[.X11]AsciiSink.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/AsciiText.c"),
--                    Install_File => Hs ("[.X11]AsciiText.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/AsciiText.h"),
--                    Install_File => Hs ("[.X11]AsciiText.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/AsciiTextP.h"),
--                    Install_File => Hs ("[.X11]AsciiTextP.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Atoms.c"),
--                    Install_File => Hs ("[.X11]Atoms.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Cardinals.h"),
--                    Install_File => Hs ("[.X11]Cardinals.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/CvtStdSel.c"),
--                    Install_File => Hs ("[.X11]CvtStdSel.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/DECkeysym.h"),
--                    Install_File => Hs ("[.X11]DECkeysym.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/DefErrMsg.c"),
--                    Install_File => Hs ("[.X11]DefErrMsg.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Dialog.c"),
--                    Install_File => Hs ("[.X11]Dialog.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Dialog.h"),
--                    Install_File => Hs ("[.X11]Dialog.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/DialogP.h"),
--                    Install_File => Hs ("[.X11]DialogP.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/DiskSrc.c"),
--                    Install_File => Hs ("[.X11]DiskSrc.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/GrayPixmap.c"),
--                    Install_File => Hs ("[.X11]GrayPixmap.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Label.c"),
--                    Install_File => Hs ("[.X11]Label.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Label.h"),
--                    Install_File => Hs ("[.X11]Label.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/LabelP.h"),
--                    Install_File => Hs ("[.X11]LabelP.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Lower.c"),
--                    Install_File => Hs ("[.X11]Lower.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Scroll.c"),
--                    Install_File => Hs ("[.X11]Scroll.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Scroll.h"),
--                    Install_File => Hs ("[.X11]Scroll.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/ScrollP.h"),
--                    Install_File => Hs ("[.X11]ScrollP.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Simple.c"),
--                    Install_File => Hs ("[.X11]Simple.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Simple.h"),
--                    Install_File => Hs ("[.X11]Simple.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/SimpleP.h"),
--                    Install_File => Hs ("[.X11]SimpleP.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/StrToJust.c"),
--                    Install_File => Hs ("[.X11]StrToJust.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/StrToOrnt.c"),
--                    Install_File => Hs ("[.X11]StrToOrnt.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/StrToWidg.c"),
--                    Install_File => Hs ("[.X11]StrToWidg.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/StringSrc.c"),
--                    Install_File => Hs ("[.X11]StringSrc.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Text.c"),
--                    Install_File => Hs ("[.X11]Text.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Text.h"),
--                    Install_File => Hs ("[.X11]Text.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/TextP.h"),
--                    Install_File => Hs ("[.X11]TextP.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/TextSrcP.h"),
--                    Install_File => Hs ("[.X11]TextSrcP.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/TextTr.c"),
--                    Install_File => Hs ("[.X11]TextTr.c")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/XawMisc.h"),
--                    Install_File => Hs ("[.X11]XawMisc.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/Xmu.h"),
--                    Install_File => Hs ("[.X11]Xmu.h")),
--
--                   (File_Type    => Text,
--                    Master_File  => Hs ("X11/copyright.h"),
--                    Install_File => Hs ("[.X11]copyright.h"))
--
--                   );
--
--     end Decus_Vms5_4_Multinet203;

--\f

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

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

    package body Hp46021a_Hpux8_0 is separate;

--\f

-- ------------------------------------------------------------------------------
-- -- APOLLO
-- ------------------------------------------------------------------------------
--
-- --No longer supported as of 06/23/92
--
--     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
--     begin
--
--         Keyboard :=
--            (Name       => Hs ("XApollo3"),
--             Id         => Xapollo3_Id,
--             Comment1   => Hs ("Apollo; keyboard 3; model 7121"),
--             Comment2   => null,
--             R1000_Dir  => Hs ("X_Apollo_SR10_2"),
--             Source_Dir => Hs ("Src_Sun_X11R3"), -- Shares source with the Sun.
--             Lines      => 40,
--             Columns    => 80,
--             Tt_Extra   => Hs ("XAp:XApollo3 XRTERM 40 80"),
--             Has_Source => True);
--
--         Recognition :=
--            (File_Type                  => Text,
--             Master_File | Install_File => Hs ("_rcg.h"));
--
--         Install :=
--            new File_Info_Array'
--                   (
--
--                    (File_Type                 => Text,
--                    Master_File | Install_File => Hs ("Makefile")),
--
--                    (File_Type                  => Binary,
--                     Master_File | Install_File => Hs ("rxi-backup"))
--                    );
--
--         Source :=
--            new File_Info_Array'
--                   (
--
--                    1 => (File_Type                   => Text,
--                           Master_File | Install_File => Hs ("Makefile.Apollo"))
--
--                    );
--
--     end Apollo3_Sr10_2_Unix;
--
--     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
--     begin
--
--         Keyboard :=
--            (Name => Hs ("XApolloM"),
--             Id => Xapollom_Id,
--             Comment1 => Hs ("Apollo; keyboard 3, Motif Compliant; model nnnn"),
--             Comment2 => null,
--             R1000_Dir => Hs ("X_Apollo_SR10_2"),
--             Source_Dir => Hs ("Src_Sun_X11R3"), -- Shares source with the Sun.
--             Lines => 40,
--             Columns => 80,
--             Tt_Extra => Hs ("XApm:XApolloM XRTERM 40 80"),
--             Has_Source => True);
--
--         Recognition :=
--            (File_Type                  => Text,
--             Master_File | Install_File => Hs ("_rcg.h"));
--
--         Install :=
--            new File_Info_Array'
--                   (
--
--                    (File_Type                 => Text,
--                    Master_File | Install_File => Hs ("Makefile")),
--
--                    (File_Type                  => Binary,
--                     Master_File | Install_File => Hs ("rxi-backup"))
--                    );
--
--         Source :=
--            new File_Info_Array'
--                   (
--
--                    1 => (File_Type                   => Text,
--                           Master_File | Install_File => Hs ("Makefile.Apollo"))
--
--                    );
--
--     end Apollom_Sr10_2_Unix;

--\f

------------------------------------------------------------------------------
-- APPLE UNIX
------------------------------------------------------------------------------

    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_X11r5_Sparc            : Keyboard_Info;
        Keyboard_Xnews_V3_0_Sparc           : Keyboard_Info;
        Keyboard_Aix3_1                     : Keyboard_Info;
        Keyboard_Vms5_4_Ultrixconnection13a : Keyboard_Info;
        Keyboard_Vms5_4_Wollongong502       : Keyboard_Info;
        Keyboard_Ultrix4_1                  : Keyboard_Info;
        Keyboard_Hpux8_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 Xsun101_X11r5_Sparc =>
                return Sun101_X11r5_Sparc.Keyboard;

            when Xsun4_X11r5_Sparc =>
                return Sun4_X11r5_Sparc.Keyboard;

            when Xnews101_V3_0_Sparc =>
                return News101_V3_0_Sparc.Keyboard;

            when Xnews4_V3_0_Sparc =>
                return News4_V3_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_4_Wollongong502 =>
                return Decus_Vms5_4_Wollongong502.Keyboard;

            when Xdecus_Vms5_4_Ultrixconnection13a =>
                return Decus_Vms5_4_Ultrixconnection13a.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_Hpux8_0 =>
                return Hp46021a_Hpux8_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_X11r5_Sparc =>
                return Ncd_R1000.Keyboard_Sun_X11r5_Sparc;

            when Xncd_Xnews_V3_0_Sparc =>
                return Ncd_R1000.Keyboard_Xnews_V3_0_Sparc;

            when Xncd_Aix3_1 =>
                return Ncd_R1000.Keyboard_Aix3_1;

            when Xncd_Vms5_4_Ultrixconnection13a =>
                return Ncd_R1000.Keyboard_Vms5_4_Ultrixconnection13a;

            when Xncd_Vms5_4_Wollongong502 =>
                return Ncd_R1000.Keyboard_Vms5_4_Wollongong502;

            when Xncd_Ds_Ultrix4_1 | Xncd_Vs_Ultrix4_1 =>
                return Ncd_R1000.Keyboard_Ultrix4_1;

            when Xncd_Hpux8_0 =>
                return Ncd_R1000.Keyboard_Hpux8_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 Xsun101_X11r5_Sparc | Xncd_Sun_X11r5_Sparc =>  
                return Sun101_X11r5_Sparc.Recognition;

            when Xsun4_X11r5_Sparc =>
                return Sun4_X11r5_Sparc.Recognition;

            when Xnews101_V3_0_Sparc | Xncd_Xnews_V3_0_Sparc =>
                return News101_V3_0_Sparc.Recognition;

            when Xnews4_V3_0_Sparc =>
                return News4_V3_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_4_Ultrixconnection13a |
                 Xncd_Vms5_4_Ultrixconnection13a =>
                return Decus_Vms5_4_Ultrixconnection13a.Recognition;

            when Xdecus_Vms5_4_Wollongong502 | Xncd_Vms5_4_Wollongong502 =>
                return Decus_Vms5_4_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_Hpux8_0 | Xncd_Hpux8_0 =>
                return Hp46021a_Hpux8_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 Xsun101_X11r5_Sparc | Xncd_Sun_X11r5_Sparc =>
                return Sun101_X11r5_Sparc.Source'Length;

            when Xsun4_X11r5_Sparc =>
                return Sun4_X11r5_Sparc.Source'Length;

            when Xnews101_V3_0_Sparc | Xncd_Xnews_V3_0_Sparc =>
                return News101_V3_0_Sparc.Source'Length;

            when Xnews4_V3_0_Sparc =>
                return News4_V3_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_4_Wollongong502 | Xncd_Vms5_4_Wollongong502 =>
                return Decus_Vms5_4_Wollongong502.Source'Length;

            when Xdecus_Vms5_4_Ultrixconnection13a |
                 Xncd_Vms5_4_Ultrixconnection13a =>
                return Decus_Vms5_4_Ultrixconnection13a.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_Hpux8_0 | Xncd_Hpux8_0 =>
                return Hp46021a_Hpux8_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 Xsun101_X11r5_Sparc | Xncd_Sun_X11r5_Sparc =>
                return Sun101_X11r5_Sparc.Install'Length;

            when Xsun4_X11r5_Sparc =>
                return Sun4_X11r5_Sparc.Install'Length;

            when Xnews101_V3_0_Sparc | Xncd_Xnews_V3_0_Sparc =>
                return News101_V3_0_Sparc.Install'Length;

            when Xnews4_V3_0_Sparc =>
                return News4_V3_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_4_Wollongong502 | Xncd_Vms5_4_Wollongong502 =>
                return Decus_Vms5_4_Wollongong502.Install'Length;

            when Xdecus_Vms5_4_Ultrixconnection13a |
                 Xncd_Vms5_4_Ultrixconnection13a =>
                return Decus_Vms5_4_Ultrixconnection13a.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_Hpux8_0 | Xncd_Hpux8_0 =>
                return Hp46021a_Hpux8_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 Xsun101_X11r5_Sparc | Xncd_Sun_X11r5_Sparc =>
                return Sun101_X11r5_Sparc.Source (File_No);

            when Xsun4_X11r5_Sparc =>
                return Sun4_X11r5_Sparc.Source (File_No);

            when Xnews101_V3_0_Sparc | Xncd_Xnews_V3_0_Sparc =>
                return News101_V3_0_Sparc.Source (File_No);

            when Xnews4_V3_0_Sparc =>
                return News4_V3_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_4_Wollongong502 | Xncd_Vms5_4_Wollongong502 =>
                return Decus_Vms5_4_Wollongong502.Source (File_No);

            when Xdecus_Vms5_4_Ultrixconnection13a |
                 Xncd_Vms5_4_Ultrixconnection13a =>
                return Decus_Vms5_4_Ultrixconnection13a.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_Hpux8_0 | Xncd_Hpux8_0 =>
                return Hp46021a_Hpux8_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 Xsun101_X11r5_Sparc | Xncd_Sun_X11r5_Sparc =>
                return Sun101_X11r5_Sparc.Install (File_No);

            when Xsun4_X11r5_Sparc =>
                return Sun4_X11r5_Sparc.Install (File_No);

            when Xnews101_V3_0_Sparc | Xncd_Xnews_V3_0_Sparc =>
                return News101_V3_0_Sparc.Install (File_No);

            when Xnews4_V3_0_Sparc =>
                return News4_V3_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_4_Wollongong502 | Xncd_Vms5_4_Wollongong502 =>
                return Decus_Vms5_4_Wollongong502.Install (File_No);

            when Xdecus_Vms5_4_Ultrixconnection13a |
                 Xncd_Vms5_4_Ultrixconnection13a =>
                return Decus_Vms5_4_Ultrixconnection13a.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_Hpux8_0 | Xncd_Hpux8_0 =>
                return Hp46021a_Hpux8_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;