Compucolor.org – Virtual Media

Listing of file='GTTIME.MAC;03' on disk='vmedia/asm_utility_4-sideB-sector.ccvf'

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
;	GET THE TIME-OF-DAY AS HH:MM:SS
;
	TITLE	GTTIME
;
;	VALUES ON ENTRY:
;	   HL => BUFFER FOR INFO
;
;	RETURNS:
;	   HL => NEXT FREE CHARACTER IN BUFFER
;
;	DESTROYS:
;	   ALL REGISTERS
;
	EXTRN	DECOUT	;ROUTINE TO CONVERT A BYTE TO ASCII
;
;	THESE ADDRESSES ARE FOR BOTH V6.78 AND V8.79
;	NOTE THAT THE V6.78 CLOCK RUNS 1-24 HRS, AND SO
;	IT SHOULD BE LOADED WITH HOUR+1 AND DISPLAYED AS
;	HOUR-1.
;

HOUR	EQU	81BBH	;HOURS, MINS AND SECS OF REAL-TIME
MIN	EQU	81BAH	;   CLOCK
SEC	EQU	81B9H

	ENTRY	GTTIME

GTTIME:	MOV	A,M
	STA	TEMP
	LDA	HOUR	;CONVERT THE HOURS
	MOV	C,A
	LDA	0001H	;CHECK FOR FCS V6.78
	CPI	6CH
	MOV	A,C
	JNZ	OKHR
	SUI	1	;CORRECT HOUR IF NECESSARY
OKHR:	CALL	DECOUT
	DCX	H
	DCX	H
	LDA	TEMP
	MOV	M,A
	INX	H
	INX	H
	INX	H

	LDA	MIN	;CONVERT THE MINUTES
	CALL	DECOUT
	DCX	H
	DCX	H
	MVI	M,':'	;PUT ':' BETWEEN HOURS AND MINS
	INX	H
	INX	H
	INX	H

	LDA	SEC	;CONVERT THE SECONDS
	CALL	DECOUT
	DCX	H
	DCX	H
	MVI	M,':'	;PUT ':' BETWEEN MINS AND SECS
	INX	H
	INX	H
	INX	H

	RET

TEMP:	DB	0

	END