/*
**	GadTools layout toolkit
**
**	Copyright © 1993-1996 by Olaf `Olsen' Barthel
**		Freely distributable.
**
**	:ts=4
*/

#ifndef _GTLAYOUT_GLOBAL_H
#include "gtlayout_global.h"
#endif

VOID
LTP_Delay(ULONG Seconds,ULONG Micros)
{
	struct MsgPort __aligned		TimePort;
	struct timerequest __aligned	TimeRequest;

	memset(&TimePort,0,sizeof(TimePort));

	NewList(&TimePort.mp_MsgList);

	TimePort.mp_Flags	= PA_SIGNAL;
	TimePort.mp_SigBit	= SIGB_SINGLE;
	TimePort.mp_SigTask	= FindTask(NULL);

	memset(&TimeRequest,0,sizeof(TimeRequest));

	TimeRequest.tr_node.io_Message.mn_ReplyPort = &TimePort;

	if(!OpenDevice(TIMERNAME,UNIT_VBLANK,&TimeRequest,NULL))
	{
		TimeRequest.tr_node.io_Command	= TR_ADDREQUEST;
		TimeRequest.tr_time.tv_secs 	= Seconds;
		TimeRequest.tr_time.tv_micro	= Micros;

		SetSignal(0,SIGF_SINGLE);
		SendIO(&TimeRequest);
		WaitIO(&TimeRequest);

		CloseDevice(&TimeRequest);
	}
}
