#define SQUARE_SIZE		20
#define SQUARE_GAP		5
#define SQUARE_DELAY	5 // mS

I0 DrawPixel(I64 x, I64 y, CBGR24 color)
{
	text.fb_alias[x + y * GR_WIDTH] = color;
}

I0 Color32Demo()
{
	I64		i, j, x, y;
	CBGR24	color;

	"\nPress any key to exit demo.\n\n";

	Sleep(500);

	text.is_fb_busy = TRUE;

	while (!CharScan)
	{
		x = FloorI64(RandU16 % GR_WIDTH, SQUARE_SIZE + SQUARE_GAP);
		y = FloorI64(RandU16 % GR_WIDTH, SQUARE_SIZE + SQUARE_GAP);
		color = RandU32;

		for (i = 0; i < SQUARE_SIZE; i++)
			for (j = 0; j < SQUARE_SIZE; j++)
				DrawPixel(x + i, y + j, color);

		Sleep(SQUARE_DELAY);
	}

	text.is_fb_busy = FALSE;
	LFBFlush;

}

Color32Demo;