#include "WimpLib:Hourglass.h"

#include "swis.h"

static int Count = 0;

bool WLib_Hourglass_IsOn(void)
{
	return (Count != 0);
}

void WLib_Hourglass_On(void)
{
	Count = 1;
	_swix(Hourglass_On, 0);
}

void WLib_Hourglass_Off(void)
{
	Count = 0;
	_swix(Hourglass_Off, 0);
}

void WLib_Hourglass_Smash(void)
{
	Count = 0;
	_swix(Hourglass_Smash, 0);
}

void WLib_Hourglass_Start(int delay)
{
	Count = 1;
	_swix(Hourglass_Start, _IN(0), delay);
}

void WLib_Hourglass_Percentage(int perc)
{
	_swix(Hourglass_Percentage, _IN(0), perc);
}

int WLib_Hourglass_LEDs(int value, int mask)
{
	_swix(Hourglass_LEDs, _INR(0,1)|_OUT(0), value, mask, &value);

	return value;
}

void WLib_Hourglass_Colours(int* pcol1, int* pcol3)
{
	_swix(Hourglass_Colours
		 , _INR(0,1)|_OUTR(0,1)
		 , *pcol1, *pcol3, pcol1, pcol3
		 );
}
