home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
CPM
/
TURBOPAS
/
TP-UTIL.ARK
/
GETTIME.SRC
< prev
next >
Wrap
Text File
|
1986-01-06
|
2KB
|
53 lines
{->>>>GetTime<<<<----------------------------------------------}
{ }
{ Filename: GETTIME.SRC -- Last Modified 10/24/85 }
{ }
{ This routine returns the current system time through DOS }
{ call $2C. It requires a prior definition of type TimeRec: }
{ }
{ TimeRec = RECORD }
{ TimeComp : Integer; }
{ TimeString : String80; }
{ Hours,Minutes,Seconds,Hundredths : Integer }
{ END; }
{--------------------------------------------------------------}
PROCEDURE GetTime(VAR TimeNow : TimeRec);
TYPE
String5 = String[5];
Reg = RECORD
CASE Boolean OF
False : (Word : Integer);
True : (LoByte,HiByte : Byte)
END;
Regpack = RECORD
AX,BX,CX,DX,BP,SI,DI,DS,ES,Flags : Reg
END;
VAR
I : Integer;
Temp1,Temp2 : String5;
AMPM : Char;
Regs : RegPack;
BEGIN
Regs.AX.HiByte := $2C; MSDOS(Regs);
WITH TimeNow DO
BEGIN
Hours := Regs.CX.HiByte; Minutes := Regs.CX.LoByte;
Seconds := Regs.DX.HiByte; Hundredths := Regs.DX.LoByte;
IF Hours > 12 THEN
BEGIN
I := Hours - 12;
AMPM := 'p'
END
ELSE AMPM := 'a';
Str(I:2,Temp1); Str(Minutes,Temp2);
IF Length(Temp2) < 2 THEN Temp2 := '0' + Temp2;
TimeString := Temp1 + ':' + Temp2 + AMPM;
TimeComp := (Hours*2048) + (Minutes*32) + Seconds DIV 2
END
END;
¬ ]1s■íH╠0└?üag⌠Åï≥A-w3▒)░¢~Y>r≤ç╧╛*É|°₧@f,■n|≥BDΘ%╗ë╫b4Θí