home *** CD-ROM | disk | FTP | other *** search
- (* ------------------------------------------------------ *)
- (* LASTUSED.PAS *)
- (* (c) 1990 Günter Teuschler & TOOLBOX *)
- (* ------------------------------------------------------ *)
- PROGRAM LastUsed;
-
- USES Crt, Dos;
-
- VAR
- tag, monat, jahr, stunde, minute : INTEGER;
-
- FUNCTION bcd_int(x : BYTE) : INTEGER;
- VAR
- w : BYTE;
- BEGIN
- port[$70] := x;
- w := port[$71];
- bcd_int := 10 * (w DIV 16) + (w MOD 16);
- END;
-
- PROCEDURE copy_cmos(quelle, ziel : BYTE);
- VAR
- wert : BYTE;
- BEGIN
- port[$70] := quelle;
- wert := port[$71];
- port[$70] := ziel;
- port[$71] := wert;
- END;
-
- BEGIN
- (* im CMOS-RAM gespeicherte Werte protokollieren *)
- minute := bcd_int($34);
- stunde := bcd_int($35);
- tag := bcd_int($36);
- monat := bcd_int($37);
- jahr := 100 * bcd_int($39) + bcd_int($38);
-
- Write('AT zuletzt eingeschaltet am ',
- tag:1, '.', monat:1, '.', jahr:4,
- ' um ', stunde:1);
- IF minute < 10 THEN
- WriteLn(':0', minute:1)
- ELSE
- WriteLn(':', minute:2);
-
- (* aktuelle Werte im CMOS-RAM speichern *)
- copy_cmos($02, $34); (* Minute *)
- copy_cmos($04, $35); (* Stunde *)
- copy_cmos($07, $36); (* Tag *)
- copy_cmos($08, $37); (* Monat *)
- copy_cmos($09, $38); (* Jahr *)
- copy_cmos($32, $39); (* Jahrhundert *)
-
- END.
- (* ------------------------------------------------------ *)
- (* Ende von LASTUSED.PAS *)