4 title CP
/DOS DosGetDateTime mapper
6 dosxxx
segment byte public 'dos'
7 assume
cs:dosxxx
,ds:nothing
,es:nothing
,ss:nothing
9 ;**********************************************************************
11 ;* MODULE: dosgetdatetime
13 ;* FUNCTION: get date and time information
17 ;* push@ struc date/time
18 ;* call dosgetdatetime
20 ;* MODULES CALLED: PC-DOS Int 21h, ah=2ah, get date
23 ;*********************************************************************
32 data dd ?
; date and time info return pointer
35 dosgetdatetime proc
far
37 Enter dosgetdatetime
; push registers
39 lds si,[bp].data ; set return data area
41 mov ah,2
ch ; get time information
43 ; save info in return data are
44 mov byte ptr [si],ch ; save hour
45 mov byte ptr [si]+1,cl ; minutes
46 mov byte ptr [si]+2,dh ; seconds
47 mov byte ptr [si]+3,dl ; hundredths
49 mov ah,2
ah ; get date and save it
50 int 21h
; in return data area
52 mov byte ptr [si]+4,dl ; save day
53 mov byte ptr [si]+5,dh ; month
54 mov word ptr [si]+6,cx ; year
55 mov word ptr [si]+8,360 ; min. from GMT
56 mov byte ptr [si]+10,al ; day of week
58 exit: sub ax,ax ; set good return code
61 ret size
str - 6 ; return