home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #6 / amigamamagazinepolishissue1998.iso / coders / jËzyki_programowania / oberon / system / amigalogger.mod (.txt) < prev    next >
Oberon Text  |  1977-12-31  |  1KB  |  57 lines

  1. Syntax10.Scn.Fnt
  2. Syntax10b.Scn.Fnt
  3. MODULE AmigaLogger;
  4. IMPORT
  5.     SYSTEM,A:=AmigaBase,E:=AmigaExec,U:=AmigaUtility;
  6. CONST
  7.     loggerName*="logger.library";
  8.     loggerBase:LONGINT;
  9.     loggerVersion-:INTEGER;
  10. PROCEDURE clear*;
  11.     r:A.Regs;
  12. BEGIN
  13.     A.LibCall(loggerBase,-30,r);
  14. END clear;
  15. PROCEDURE firstPos*():LONGINT;
  16.     r:A.Regs;
  17. BEGIN
  18.     A.LibCall(loggerBase,-36,r);
  19.     RETURN r.d[0];
  20. END firstPos;
  21. PROCEDURE nextPos*():LONGINT;
  22.     r:A.Regs;
  23. BEGIN
  24.     A.LibCall(loggerBase,-42,r);
  25.     RETURN r.d[0];
  26. END nextPos;
  27. PROCEDURE read*(pos:LONGINT):CHAR;
  28.     r:A.Regs;
  29. BEGIN
  30.     r.d[2]:=pos;
  31.     A.LibCall(loggerBase,-48,r);
  32.     RETURN CHR(r.d[0]);
  33. END read;
  34. PROCEDURE write*(ch:CHAR);
  35.     r:A.Regs;
  36. BEGIN
  37.     r.d[2]:=ORD(ch);
  38.     A.LibCall(loggerBase,-54,r);
  39. END write;
  40. PROCEDURE writeStamp*;
  41.     r:A.Regs;
  42. BEGIN
  43.     A.LibCall(loggerBase,-60,r);
  44. END writeStamp;
  45. PROCEDURE Init;
  46.     LibraryPtr=POINTER TO E.Library;
  47.     lib:LibraryPtr;
  48. BEGIN
  49.     loggerBase:=E.OpenLibrary(loggerName,40);
  50.     IF loggerBase=0 THEN HALT(99) END;
  51.     lib:=SYSTEM.VAL(LibraryPtr,loggerBase);
  52.     loggerVersion:=lib.version;
  53. END Init;
  54. BEGIN
  55.     Init;
  56. END AmigaLogger.
  57.