|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 1676 (0x68c)
Types: TextFile
Notes: R1k Text-file segment
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦b5cb82d3f⟧
└─⟦this⟧
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