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

⟦33374ebd5⟧ TextFile

    Length: 1676 (0x68c)
    Types: TextFile
    Notes: R1k Text-file segment

Derivation

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

TextFile

with CALENDAR;		use CALENDAR;
with SYSTEM;
package XCALENDAR is

	--
	-- Extensions to Calendar
	--

    --------------------------------------------------------------------------
    -- Resets the clock's date.
    --
	-- For the new layered Ada RTS::
	-- The date of delta delay entries on the time event queue are
	-- moved forward/backward by (set_clock - clock). The date
	-- of the delay until entries aren't changed. However, the delay until
	-- entries are reorderd on the queue.
	--
	-- For the old Ada RTS::
    -- The date of entries on the delay queue are moved forward/backward
    -- by (set_clock - clock). This is no problem for the delta delays (ADA
    -- delay statement). However, delays till an absolute date (delay_until
    -- subprogram) will be incorrect.
	--
	-- For the new layered Ada RTS::
	-- On self-hosts, if timer_support_arg /= NO_ADDR, then, its
	-- the address of the OS's time record. This allows, set_clock()
	-- to be atomically set with the OS's current time. For an
	-- example, see how set_time() is called in calendar_s.a.
    --------------------------------------------------------------------------
    procedure set_clock(date: time;
		timer_support_arg: system.address := system.NO_ADDR);

    --------------------------------------------------------------------------
    -- Delays until an absolute date in the future.
    --------------------------------------------------------------------------
    procedure delay_until(date: time);

private
	pragma interface(ADA, set_clock);
	pragma interface_name(set_clock, "__SET_CLOCK");

	pragma interface(ADA, delay_until);
	pragma interface_name(delay_until, "__DELAY_UNTIL");
end