home *** CD-ROM | disk | FTP | other *** search
Oberon Document | 1994-06-07 | 4.3 KB | 139 lines | [oODC/obnF] |
- Documents.StdDocumentDesc
- Documents.DocumentDesc
- Containers.ViewDesc
- Views.ViewDesc
- Stores.StoreDesc
- Documents.ModelDesc
- Containers.ModelDesc
- Models.ModelDesc
- Stores.ElemDesc
- TextViews.StdViewDesc
- TextViews.ViewDesc
- TextModels.StdModelDesc
- TextModels.ModelDesc
- TextModels.AttributesDesc
- Geneva
- Geneva
- StdStamps.StdViewDesc
- Geneva
- MODULE MacTimeMgr;
- (* cp
- TickCount, GetDblTime repeated here
- IMPORT SYSTEM, MacTypes;
- CONST
- D0 = 0; A0 = 8;
- Time = 20CH;
- DoubleTime = 2F0H;
- CaretTime = 2F4H;
- CODE = 1; NOSTKCHK = 4;
- TYPE
- DateTimeRec* = RECORD (MacTypes.Data)
- year*, month*, day*,
- hour*, minute*, second*,
- dayOfWeek*: INTEGER
- END;
- TMTask* = RECORD (MacTypes.Data)
- qLink: LONGINT;
- qType*: INTEGER;
- tmAddr*: MacTypes.ProcPtr;
- tmCount*: LONGINT;
- tmWakeUp*: LONGINT;
- tmReserved: LONGINT
- END;
- TMTaskPtr* = POINTER TO TMTask;
- PROCEDURE [CODE] readDateTime 0A0H, 039H;
- PROCEDURE [CODE] setDateTime 0A0H, 03AH;
- PROCEDURE [CODE] date2Secs 0A9H, 0C7H;
- PROCEDURE [CODE] secs2Date 0A9H, 0C6H;
- PROCEDURE [CODE] insTime 0A0H, 058H;
- PROCEDURE [CODE] insXTime 0A4H, 058H;
- PROCEDURE [CODE] primeTime 0A0H, 05AH;
- PROCEDURE [CODE] rmvTime 0A0H, 059H;
- PROCEDURE [CODE] TickCount* (): LONGINT 0A9H, 075H;
- PROCEDURE [CODE] GetDblTime* (): LONGINT 002H, 0F0H;
- PROCEDURE [NOSTKCHK] GetCaretTime* (): LONGINT;
- VAR t: LONGINT;
- BEGIN
- SYSTEM.MOVE(CaretTime, SYSTEM.ADR(t), 4);
- RETURN t
- END GetCaretTime;
- (** Date and Time Operations (see OSUtilities in IM, volume II) **)
- PROCEDURE [NOSTKCHK] ReadDateTime* (VAR secs: LONGINT): INTEGER;
- VAR res: INTEGER;
- BEGIN
- SYSTEM.PUTREG(A0, SYSTEM.ADR(secs));
- readDateTime;
- SYSTEM.GETREG(D0, res);
- RETURN res
- END ReadDateTime;
- PROCEDURE [NOSTKCHK] GetDateTime* (VAR secs: LONGINT);
- BEGIN
- SYSTEM.MOVE(Time, SYSTEM.ADR(secs), 4)
- END GetDateTime;
- PROCEDURE [NOSTKCHK] SetDateTime* (secs: LONGINT): INTEGER;
- VAR res: INTEGER;
- BEGIN
- SYSTEM.PUTREG(D0,secs);
- setDateTime;
- SYSTEM.GETREG(D0, res);
- RETURN res
- END SetDateTime;
- PROCEDURE [NOSTKCHK] Date2Secs* (date: DateTimeRec; VAR secs: LONGINT);
- BEGIN
- SYSTEM.PUTREG(A0, SYSTEM.ADR(date));
- date2Secs;
- SYSTEM.GETREG(D0, secs)
- END Date2Secs;
- PROCEDURE [NOSTKCHK] Secs2Date* (secs: LONGINT; VAR d: DateTimeRec);
- BEGIN
- SYSTEM.PUTREG(D0, secs);
- SYSTEM.PUTREG(A0, SYSTEM.ADR(d)); (* error in 'Inside Macintosh' *)
- secs2Date
- END Secs2Date;
- PROCEDURE [NOSTKCHK] GetTime* (VAR d: DateTimeRec);
- VAR secs: LONGINT;
- BEGIN
- GetDateTime(secs);
- Secs2Date(secs, d)
- END GetTime;
- PROCEDURE [NOSTKCHK] SetTime* (d: DateTimeRec);
- VAR secs: LONGINT; err: INTEGER;
- BEGIN
- Date2Secs(d, secs);
- err := SetDateTime(secs)
- END SetTime;
- (** 128K ROM **)
- PROCEDURE [NOSTKCHK] InsTime* (tmTaskPtr: TMTaskPtr);
- BEGIN
- SYSTEM.PUTREG(A0, tmTaskPtr);
- insTime
- END InsTime;
- PROCEDURE [NOSTKCHK] InsXTime* (tmTaskPtr: TMTaskPtr);
- BEGIN
- SYSTEM.PUTREG(A0, tmTaskPtr);
- insXTime
- END InsXTime;
- PROCEDURE [NOSTKCHK] PrimeTime* (tmTaskPtr: TMTaskPtr; count: LONGINT);
- BEGIN
- SYSTEM.PUTREG(A0, tmTaskPtr);
- SYSTEM.PUTREG(D0, count);
- primeTime
- END PrimeTime;
- PROCEDURE [NOSTKCHK] RmvTime* (tmTaskPtr: TMTaskPtr);
- BEGIN
- SYSTEM.PUTREG(A0, tmTaskPtr);
- rmvTime
- END RmvTime;
- END MacTimeMgr.
- TextControllers.StdCtrlDesc
- TextControllers.ControllerDesc
- Containers.ControllerDesc
- Controllers.ControllerDesc
- TextRulers.StdRulerDesc
- TextRulers.RulerDesc
- TextRulers.StdStyleDesc
- TextRulers.StyleDesc
- TextRulers.AttributesDesc
- Geneva
- Documents.ControllerDesc
-