PROC L:(pr21z$,pr22z$)
LOCAL dmyz1$(2),lc61z%,dmyz2$(2),lc62z%,lc63z%
LOCAL lc59z&,lc60z&
lc59z&=DAYS(DAY,MONTH,YEAR)
lc60z&=DATETOSECS(1970,1,1,HOUR,MINUTE,SECOND)
dINIT "Touch "+pr22z$
dDATE lc59z&,"Set new date:",0,DAYS(19,1,2038)
dTIME lc60z&,"Set new time:",1,0,86399
IF DIALOG=0
RETURN
ENDIF
lc59z&=(lc59z&-25567)*86400
lc59z&=lc59z&+lc60z&
B$=pr21z$+pr22z$+CHR$(0)
lc61z%=PEEKW(ADDR(lc59z&))
lc62z%=PEEKW(UADD(ADDR(lc59z&),2))
lc63z%=CALL(4999,UADD(ADDR(B$),1),lc61z%,0,0,lc62z%)
IF lc63z%
GIPRINT "Touch failed"
RETURN
ENDIF
lc62z%=32
lc61z%=lc62z%
CALL(2439,UADD(ADDR(B$),1),lc61z%,0,0,lc62z%)
ENDP
|
|