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

⟦25c504a26⟧ TextFile

    Length: 3999 (0xf9f)
    Types: TextFile
    Names: »B«

Derivation

└─⟦bdeee703f⟧ Bits:30000538 8mm tape, Rational 1000, RWI 10_1_1
    └─ ⟦545705153⟧ »DATA« 
        └─⟦f9289093d⟧ 
└─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS 
    └─ ⟦91c658230⟧ »DATA« 
        └─⟦f9289093d⟧ 
            └─⟦this⟧ 

TextFile

with Directory_Tools;
with Rwi_Install;
use Rwi_Install;
with Rwi_String;
use Rwi_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;

--\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.
------------------------------------------------------------------------------

------------------------------------------------------------------------------
----PC 101 keybaord
------------------------------------------------------------------------------

    package Pc101 is
        Keyboard : Keyboard_Info;
        Source   : File_Info_Array_Ptr;
    end Pc101;

    package body Pc101 is separate;

    package Pc91 is
        Keyboard : Keyboard_Info;
        Source   : File_Info_Array_Ptr;
    end Pc91;

    package body Pc91 is separate;

    package Pcbasic is
        Keyboard : Keyboard_Info;
        Source   : File_Info_Array_Ptr;
    end Pcbasic;

    package body Pcbasic is separate;

    package Pc86 is
        Keyboard : Keyboard_Info;
        Source   : File_Info_Array_Ptr;
    end Pc86;

    package body Pc86 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 = "LMA" then
            return "rutabaga";      -- LMA 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

            when Pc101_Ms_Windows_3_0 =>
                return Pc101.Keyboard;
            when Pc91_Ms_Windows_3_0 =>
                return Pc91.Keyboard;
            when Pcbasic_Ms_Windows_3_0 =>
                return Pcbasic.Keyboard;
            when Pc86_Ms_Windows_3_0 =>
                return Pc86.Keyboard;

        end case;

    end Supported_Keyboards;

--\f

    function Source_Length (Terminal : Terminal_Type) return Natural is
    begin

        case Terminal is

            when Pc101_Ms_Windows_3_0 =>
                return Pc101.Source'Length;
            when Pc91_Ms_Windows_3_0 =>
                return Pc91.Source'Length;
            when Pcbasic_Ms_Windows_3_0 =>
                return Pcbasic.Source'Length;
            when Pc86_Ms_Windows_3_0 =>
                return Pc86.Source'Length;

        end case;

    end Source_Length;

--\f

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

        case Terminal is

            when Pc101_Ms_Windows_3_0 =>
                return Pc101.Source (File_No);
            when Pc91_Ms_Windows_3_0 =>
                return Pc91.Source (File_No);
            when Pcbasic_Ms_Windows_3_0 =>
                return Pcbasic.Source (File_No);
            when Pc86_Ms_Windows_3_0 =>
                return Pc86.Source (File_No);

        end case;

    end Source;

--\f

end Release;