Arduino TV out flicker question

Many itterations and testing different approaches, I always seem to bump into flickering problems using TVout.

With a few items on the screen, screen_clear(); can be used to wipe the screen and write new items into the screen. There is no flicker. But if you increase the things going on, flicker starts occuring. (in-efficient coding, wrong calls slowing things down maybe?)

So I removed screen_clear(); from the loop, and switched to setting the score section to black before pushing the numbers to the screen. It eliminated flicker. After that I introduced a bitmapped image at the bottom, but now there is flicker in that image. I'm not sure why it happens yet.

Is there any way other to reduce flicker on screen?

This is currently my sketch to test things out with.

#include <TVout.h>
#include <fontALL.h>

TVout TV;

volatile unsigned long loops = 4294965000; // 4294960000 (just to test with all the possible digits on screen quickly.)

// Experimental idea to handle the overflow, but still remember what the points were before it overflowed. (displaying a number it's just a number.)
// At the bottom of the loop, when the exponent is reached, the system returns to 0, but the exponentLevel gets exponentLevel++;
// So we can know exactly how many times there was an overflow. We can use this information to multiply the digits currently in the "loops" with the digits before overflow occured.
// Then after calculation, display the "total" score. (this way there can be even more score on the screen than the current maximum.)
int exponentLevel = 0;
unsigned long exponent = 4294967295; // break up the exponent in individual numbers, but keep in mind that there is multiple levels.
// so exponent level 1 should make for 1x4 1x2 1x9 and level 2 is 2x4 2x2 2x9 etc.

// Trying to create a nice image.
const unsigned char logo [] PROGMEM = { 128, 42, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x45, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x57, 0xfd, 0x55, 0x55, 0x15, 0x11, 0x11, 0x11, 0x11, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xae, 0xae, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x5c, 0x7f, 0xd4, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x75, 0x55, 0xf5, 0x57, 0xd7, 0x55, 0x51, 0x11, 0x11, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x7d, 0xd5, 0xfd, 0x5f, 0xdf, 0xdd, 0x44, 0x44, 0x44, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x5d, 0x7f, 0xff, 0xf7, 0xff, 0xf7, 0x55, 0x55, 0x11, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xbe, 0xee, 0xaa, 0xae, 0xee, 0xaa, 0xaa, 0xaa, 
	0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x5d, 0x7f, 0xff, 0xff, 0xff, 0xfd, 0x44, 0x44, 0x44, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xba, 0xba, 0xaa, 0xbb, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x57, 0xff, 0xff, 0xff, 0xff, 0xf5, 0x55, 0x51, 0x55, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xee, 0xae, 0xee, 0xea, 0xaa, 0xaa, 0xaa, 
	0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x45, 0xff, 0xff, 0xff, 0xdf, 0xd4, 0x44, 0x44, 0x44, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xab, 0xbb, 0xba, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x57, 0xff, 0xff, 0xff, 0xf5, 0x55, 0x55, 0x51, 0x11, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xee, 0xee, 0xea, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x5f, 0xff, 0xff, 0xff, 0xd4, 0x44, 0x44, 0x44, 0x44, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x55, 0x7f, 0xff, 0xff, 0xff, 0xd5, 0x55, 0x15, 0x11, 0x11, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xee, 0xea, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x5f, 0xdd, 0xff, 0xff, 0xff, 0xd4, 0x44, 0x44, 0x44, 0x44, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xfb, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x11, 0x11, 0x11, 0x11, 0x11, 0x15, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xd5, 0x55, 0x55, 0x51, 0x11, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xea, 0xee, 0xea, 0xea, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x44, 0x44, 0x44, 0x44, 0x44, 0x45, 0xff, 0xff, 0xff, 0xfd, 0xdf, 0xd4, 0x44, 0x44, 0x44, 0x44, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xab, 0xbb, 0xbb, 0xea, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x11, 0x11, 0x11, 0x11, 0x11, 0x15, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xf5, 0x55, 0x55, 0x11, 0x51, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xae, 0xee, 0xee, 0xee, 0xee, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x44, 0x44, 0x44, 0x44, 0x44, 0x45, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x44, 0x44, 0x44, 0x44, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xab, 0xff, 0xfa, 0xfb, 0xba, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x11, 0x11, 0x11, 0x11, 0x11, 0x15, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xf5, 0x55, 0x55, 0x51, 0x11, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xae, 0xee, 0xee, 0xea, 0xee, 0xea, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x44, 0x44, 0x44, 0x44, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xba, 0xbf, 0xfa, 0xbe, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x57, 0x75, 0x7f, 0xff, 0xff, 0xff, 0x55, 0x55, 0x51, 0x11, 
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xbe, 0xfe, 0xee, 0xea, 0xaa, 0xaa, 0xaa, 0xaa, 
	0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x45, 0x54, 0x5f, 0xff, 0xff, 0xdd, 0x44, 0x44, 0x44, 0x44
};
/*
// Unused for now, leave as reference. a 'ScreenTest' image, 120x96px
const unsigned char ScreenTest [] PROGMEM = { 120, 96, 
	0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
	0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xc0, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xd5, 0x55, 0x55, 0x55, 
	0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x57, 0xc0, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xd2, 0xdd, 0xef, 0xbf, 0x7f, 0x7f, 
	0xbf, 0xef, 0xfd, 0xfe, 0xfe, 0xfd, 0xf7, 0xbb, 0x43, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xd3, 0x77, 0xbe, 0xfc, 0xf1, 0xe0, 0x22, 0x15, 
	0x55, 0x55, 0x54, 0xcc, 0xcc, 0xcc, 0xc3, 0xc3, 0x77, 0xbe, 0xfd, 0x0a, 0x10, 0x77, 0x2a, 0xaa, 
	0xaa, 0xaa, 0xcc, 0xcc, 0xcc, 0xc3, 0xd0, 0x77, 0xbe, 0xfd, 0x0a, 0xd0, 0x7f, 0x15, 0x55, 0x55, 
	0x54, 0xcc, 0xcc, 0xcc, 0xc3, 0xc0, 0x07, 0xbe, 0xfd, 0x0a, 0xd0, 0x3e, 0x2a, 0xaa, 0xaa, 0xaa, 
	0xcc, 0xcc, 0xcc, 0xc3, 0xd0, 0x00, 0x3e, 0xfd, 0x0a, 0x10, 0x1c, 0x15, 0x55, 0x55, 0x54, 0xcc, 
	0xcc, 0xcc, 0xc3, 0xc0, 0x00, 0x00, 0xfc, 0xf1, 0xe0, 0x08, 0x2a, 0xaa, 0xaa, 0xaa, 0xcc, 0xcc, 
	0xcc, 0xc3, 0xd0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x03, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 
	0xd0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xc3, 
	0x77, 0xbe, 0xfc, 0x88, 0x09, 0xdc, 0xf3, 0x99, 0xff, 0xc7, 0x02, 0x0f, 0x8f, 0x83, 0xd2, 0x67, 
	0x3c, 0xf9, 0x94, 0x18, 0x5e, 0x79, 0xcc, 0xff, 0x8f, 0x87, 0x17, 0x50, 0x43, 0xc0, 0x46, 0x38, 
	0xf0, 0x94, 0x08, 0x5f, 0x3c, 0xe6, 0x7f, 0x1f, 0xcf, 0x90, 0x55, 0x43, 0xd0, 0x04, 0x30, 0xe0, 
	0x95, 0x48, 0x9f, 0x9e, 0x73, 0x3e, 0x0f, 0x87, 0x15, 0x50, 0x43, 0xc0, 0x00, 0x20, 0xc0, 0x94, 
	0x88, 0x9f, 0xcf, 0x39, 0x9c, 0x07, 0x02, 0x10, 0x57, 0x43, 0xd0, 0x00, 0x00, 0x81, 0xc9, 0x5c, 
	0x9f, 0xe7, 0x9c, 0xc8, 0x02, 0x00, 0x0f, 0x8f, 0x83, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xd7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
	0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xd0, 0x78, 0x00, 0x01, 0xe0, 0x3c, 0x00, 0x00, 0xf0, 0x1e, 
	0x03, 0xc0, 0x78, 0x0f, 0x03, 0xc0, 0xfc, 0x00, 0x03, 0xf0, 0x7e, 0x00, 0x01, 0xf8, 0x3f, 0x07, 
	0xe0, 0xfc, 0x1f, 0x83, 0xd1, 0x7a, 0x00, 0x41, 0xe8, 0x3d, 0x10, 0x22, 0xf0, 0x5e, 0x03, 0xd1, 
	0x7a, 0x2f, 0x43, 0xc3, 0x87, 0x00, 0xe0, 0x1c, 0x03, 0xb8, 0x77, 0x00, 0xe0, 0x00, 0x3b, 0x87, 
	0x70, 0xe3, 0xd3, 0x87, 0x00, 0xe0, 0x1c, 0x03, 0xb8, 0x77, 0x00, 0xe0, 0x00, 0x3b, 0x87, 0x70, 
	0xe3, 0xc3, 0x87, 0x00, 0xe0, 0x1c, 0x03, 0xb8, 0x77, 0x00, 0xe0, 0x00, 0x3b, 0x87, 0x70, 0xe3, 
	0xd3, 0x87, 0x00, 0xe0, 0x1c, 0x03, 0xb8, 0x77, 0x00, 0xe0, 0x00, 0x3b, 0x87, 0x70, 0xe3, 0xc1, 
	0x02, 0x00, 0x41, 0xe8, 0x3d, 0x17, 0xa2, 0xf0, 0x5e, 0x00, 0x11, 0x7a, 0x2f, 0x43, 0xd0, 0x00, 
	0x00, 0x03, 0xf0, 0x7e, 0x0f, 0xc1, 0xf8, 0x3f, 0x00, 0x00, 0xfc, 0x1f, 0x83, 0xc1, 0x02, 0x00, 
	0x45, 0xe0, 0x3d, 0x07, 0xa0, 0xf4, 0x5e, 0x80, 0x11, 0x7a, 0x0f, 0x43, 0xd3, 0x87, 0x00, 0xee, 
	0x00, 0x03, 0x80, 0x70, 0x0e, 0xe1, 0xc0, 0x3b, 0x87, 0x00, 0xe3, 0xc3, 0x87, 0x00, 0xee, 0x00, 
	0x03, 0x80, 0x70, 0x0e, 0xe1, 0xc0, 0x3b, 0x87, 0x00, 0xe3, 0xd3, 0x87, 0x00, 0xee, 0x00, 0x03, 
	0x80, 0x70, 0x0e, 0xe1, 0xc0, 0x3b, 0x87, 0x00, 0xe3, 0xc3, 0x87, 0x00, 0xee, 0x00, 0x03, 0x80, 
	0x70, 0x0e, 0xe1, 0xc0, 0x3b, 0x87, 0x00, 0xe3, 0xd1, 0x7a, 0x00, 0x45, 0xe0, 0x3d, 0x00, 0x20, 
	0xf4, 0x5e, 0x80, 0x11, 0x7a, 0x0f, 0x43, 0xc0, 0xfc, 0x00, 0x03, 0xf0, 0x7e, 0x00, 0x01, 0xf8, 
	0x3f, 0x00, 0x00, 0xfc, 0x1f, 0x83, 0xd0, 0x78, 0x00, 0x01, 0xe0, 0x3c, 0x00, 0x00, 0xf0, 0x1e, 
	0x00, 0x00, 0x78, 0x0f, 0x03, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x03, 0xd0, 0x78, 0x00, 0x01, 0xe0, 0x00, 0x07, 0x80, 0xf0, 0x1e, 0x00, 0x00, 
	0x00, 0x00, 0x03, 0xc0, 0xfc, 0x00, 0x03, 0xf0, 0x00, 0x0f, 0xc1, 0xf8, 0x3f, 0x00, 0x00, 0x00, 
	0x00, 0x03, 0xd1, 0x7a, 0x20, 0x05, 0xe0, 0x01, 0x17, 0x82, 0xf0, 0x5e, 0x88, 0x11, 0x00, 0x00, 
	0x43, 0xc3, 0x87, 0x70, 0x0e, 0x00, 0x03, 0xb8, 0x07, 0x00, 0xe1, 0xdc, 0x3b, 0x80, 0x00, 0xe3, 
	0xd3, 0x87, 0x70, 0x0e, 0x00, 0x03, 0xb8, 0x07, 0x00, 0xe1, 0xdc, 0x3b, 0x80, 0x00, 0xe3, 0xc3, 
	0x87, 0x70, 0x0e, 0x00, 0x03, 0xb8, 0x07, 0x00, 0xe1, 0xdc, 0x3b, 0x80, 0x00, 0xe3, 0xd3, 0x87, 
	0x70, 0x0e, 0x00, 0x03, 0xb8, 0x07, 0x00, 0xe1, 0xdc, 0x3b, 0x80, 0x00, 0xe3, 0xc1, 0x7a, 0x2f, 
	0x04, 0x00, 0x3d, 0x17, 0x82, 0xf0, 0x5e, 0x8b, 0xd1, 0x00, 0x00, 0x43, 0xd0, 0xfc, 0x1f, 0x80, 
	0x00, 0x7e, 0x0f, 0xc1, 0xf8, 0x3f, 0x07, 0xe0, 0x00, 0x00, 0x03, 0xc1, 0x7a, 0x2f, 0x44, 0x00, 
	0xbd, 0x17, 0x82, 0xf0, 0x1e, 0x8b, 0xd1, 0x00, 0x00, 0x43, 0xd3, 0x87, 0x70, 0xee, 0x01, 0xc3, 
	0xb8, 0x07, 0x00, 0x01, 0xdc, 0x3b, 0x80, 0x00, 0xe3, 0xc3, 0x87, 0x70, 0xee, 0x01, 0xc3, 0xb8, 
	0x07, 0x00, 0x01, 0xdc, 0x3b, 0x80, 0x00, 0xe3, 0xd3, 0x87, 0x70, 0xee, 0x01, 0xc3, 0xb8, 0x07, 
	0x00, 0x01, 0xdc, 0x3b, 0x80, 0x00, 0xe3, 0xc3, 0x87, 0x70, 0xee, 0x01, 0xc3, 0xb8, 0x07, 0x00, 
	0x01, 0xdc, 0x3b, 0x80, 0x00, 0xe3, 0xd1, 0x02, 0x2f, 0x45, 0xe0, 0xbd, 0x17, 0x82, 0x00, 0x1e, 
	0x88, 0x11, 0x00, 0x0f, 0x43, 0xc0, 0x00, 0x1f, 0x83, 0xf0, 0x7e, 0x0f, 0xc0, 0x00, 0x3f, 0x00, 
	0x00, 0x00, 0x1f, 0x83, 0xd0, 0x00, 0x0f, 0x01, 0xe0, 0x3c, 0x07, 0x80, 0x00, 0x1e, 0x00, 0x00, 
	0x00, 0x0f, 0x03, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x03, 0xd0, 0x00, 0x0f, 0x01, 0xe0, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x00, 
	0x03, 0xc0, 0x00, 0x1f, 0x83, 0xf0, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x03, 
	0xd1, 0x00, 0x2f, 0x45, 0xe8, 0xbd, 0x10, 0x02, 0x04, 0x00, 0x00, 0x01, 0x7a, 0x20, 0x03, 0xc3, 
	0x80, 0x70, 0xee, 0x1d, 0xc3, 0xb8, 0x07, 0x0e, 0x00, 0x00, 0x03, 0x87, 0x70, 0x03, 0xd3, 0x80, 
	0x70, 0xee, 0x1d, 0xc3, 0xb8, 0x07, 0x0e, 0x00, 0x00, 0x03, 0x87, 0x70, 0x03, 0xc3, 0x80, 0x70, 
	0xee, 0x1d, 0xc3, 0xb8, 0x07, 0x0e, 0x00, 0x00, 0x03, 0x87, 0x70, 0x03, 0xd3, 0x80, 0x70, 0xee, 
	0x1d, 0xc3, 0xb8, 0x07, 0x0e, 0x00, 0x00, 0x03, 0x87, 0x70, 0x03, 0xc1, 0x00, 0x20, 0x44, 0x08, 
	0xbd, 0x17, 0x82, 0x04, 0x1e, 0x03, 0xc1, 0x7a, 0x20, 0x03, 0xd0, 0x00, 0x00, 0x00, 0x00, 0x7e, 
	0x0f, 0xc0, 0x00, 0x3f, 0x07, 0xe0, 0xfc, 0x00, 0x03, 0xc1, 0x00, 0x20, 0x44, 0x08, 0xbc, 0x17, 
	0x82, 0x04, 0x1e, 0x03, 0xc0, 0x78, 0x00, 0x03, 0xd3, 0x80, 0x70, 0xee, 0x1d, 0xc0, 0x38, 0x07, 
	0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xc3, 0x80, 0x70, 0xee, 0x1d, 0xc0, 0x38, 0x07, 0x0e, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xd3, 0x80, 0x70, 0xee, 0x1d, 0xc0, 0x38, 0x07, 0x0e, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x03, 0xc3, 0x80, 0x70, 0xee, 0x1d, 0xc0, 0x38, 0x07, 0x0e, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x03, 0xd1, 0x78, 0x20, 0x05, 0xe8, 0x80, 0x17, 0x82, 0xf4, 0x1e, 0x00, 0x00, 
	0x00, 0x00, 0x03, 0xc0, 0xfc, 0x00, 0x03, 0xf0, 0x00, 0x0f, 0xc1, 0xf8, 0x3f, 0x00, 0x00, 0x00, 
	0x00, 0x03, 0xd0, 0x78, 0x00, 0x01, 0xe0, 0x00, 0x07, 0x80, 0xf0, 0x1e, 0x00, 0x00, 0x00, 0x00, 
	0x03, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 
	0xd0, 0x78, 0x0f, 0x01, 0xe0, 0x00, 0x07, 0x80, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x03, 0xc0, 
	0xfc, 0x1f, 0x83, 0xf0, 0x00, 0x0f, 0xc1, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x83, 0xd1, 0x78, 
	0x2f, 0x41, 0xe8, 0x81, 0x17, 0x80, 0xf4, 0x40, 0x00, 0x11, 0x02, 0x0f, 0x03, 0xc3, 0x80, 0x70, 
	0xe0, 0x1d, 0xc3, 0xb8, 0x00, 0x0e, 0xe0, 0x00, 0x3b, 0x87, 0x00, 0x03, 0xd3, 0x80, 0x70, 0xe0, 
	0x1d, 0xc3, 0xb8, 0x00, 0x0e, 0xe0, 0x00, 0x3b, 0x87, 0x00, 0x03, 0xc3, 0x80, 0x70, 0xe0, 0x1d, 
	0xc3, 0xb8, 0x00, 0x0e, 0xe0, 0x00, 0x3b, 0x87, 0x00, 0x03, 0xd3, 0x80, 0x70, 0xe0, 0x1d, 0xc3, 
	0xb8, 0x00, 0x0e, 0xe0, 0x00, 0x3b, 0x87, 0x00, 0x03, 0xc1, 0x00, 0x20, 0x41, 0xe8, 0xbd, 0x17, 
	0x80, 0x04, 0x5e, 0x03, 0xd1, 0x02, 0x0f, 0x03, 0xd0, 0x00, 0x00, 0x03, 0xf0, 0x7e, 0x0f, 0xc0, 
	0x00, 0x3f, 0x07, 0xe0, 0x00, 0x1f, 0x83, 0xc0, 0x00, 0x00, 0x01, 0xe0, 0x3c, 0x07, 0x80, 0x00, 
	0x1e, 0x03, 0xc0, 0x00, 0x0f, 0x03, 0xd0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x03, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
	0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
	0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
};
*/

// NUMBERS LIST.
// '0', 11x18px
const unsigned char number_0 [] PROGMEM = { 11, 18, 
	0x00, 0x00, 0x0f, 0x00, 0x1f, 0x80, 0x2f, 0x40, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 
	0x20, 0x40, 0x00, 0x00, 0x20, 0x40, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 0x2f, 0x40, 
	0x1f, 0x80, 0x0f, 0x00
};
// '1', 11x18px
const unsigned char number_1 [] PROGMEM = { 11, 18, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 
	0x00, 0x40, 0x00, 0x00, 0x00, 0x40, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0x40, 
	0x00, 0x00, 0x00, 0x00
};
// '2', 11x18px
const unsigned char number_2 [] PROGMEM = { 11, 18, 
	0x00, 0x00, 0x0f, 0x00, 0x1f, 0x80, 0x0f, 0x40, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 
	0x0f, 0x40, 0x1f, 0x80, 0x2f, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x2f, 0x00, 
	0x1f, 0x80, 0x0f, 0x00
};
// '3', 11x18px
const unsigned char number_3 [] PROGMEM = { 11, 18, 
	0x00, 0x00, 0x0f, 0x00, 0x1f, 0x80, 0x0f, 0x40, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 
	0x0f, 0x40, 0x1f, 0x80, 0x0f, 0x40, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x0f, 0x40, 
	0x1f, 0x80, 0x0f, 0x00
};
// '4', 11x18px
const unsigned char number_4 [] PROGMEM = { 11, 18, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x40, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 
	0x2f, 0x40, 0x1f, 0x80, 0x0f, 0x40, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0x40, 
	0x00, 0x00, 0x00, 0x00
};
// '5', 11x18px
const unsigned char number_5 [] PROGMEM = { 11, 18, 
	0x00, 0x00, 0x0f, 0x00, 0x1f, 0x80, 0x2f, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 
	0x2f, 0x00, 0x1f, 0x80, 0x0f, 0x40, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x0f, 0x40, 
	0x1f, 0x80, 0x0f, 0x00
};
// '6', 11x18px
const unsigned char number_6 [] PROGMEM = { 11, 18, 
	0x00, 0x00, 0x0f, 0x00, 0x1f, 0x80, 0x2f, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 
	0x2f, 0x00, 0x1f, 0x80, 0x2f, 0x40, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 0x2f, 0x40, 
	0x1f, 0x80, 0x0f, 0x00
};
// '7', 11x18px
const unsigned char number_7 [] PROGMEM = { 11, 18, 
	0x00, 0x00, 0x0f, 0x00, 0x1f, 0x80, 0x0f, 0x40, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 
	0x00, 0x40, 0x00, 0x00, 0x00, 0x40, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0x40, 
	0x00, 0x00, 0x00, 0x00
};
// '8', 11x18px
const unsigned char number_8 [] PROGMEM = { 11, 18, 
	0x00, 0x00, 0x0f, 0x00, 0x1f, 0x80, 0x2f, 0x40, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 
	0x2f, 0x40, 0x1f, 0x80, 0x2f, 0x40, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 0x2f, 0x40, 
	0x1f, 0x80, 0x0f, 0x00
};
// '9', 11x18px
const unsigned char number_9 [] PROGMEM = { 11, 18, 
	0x00, 0x00, 0x0f, 0x00, 0x1f, 0x80, 0x2f, 0x40, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 0x70, 0xe0, 
	0x2f, 0x40, 0x1f, 0x80, 0x0f, 0x40, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xe0, 0x0f, 0x40, 
	0x1f, 0x80, 0x0f, 0x00
};

// SETUP ROUTINE

void setup() {
  Serial.begin(115200);
  TV.begin(PAL,128,96);
  TV.clear_screen();
  TV.draw_rect(0,0,127,52,WHITE); // Draw a rectangle at (x,y) by dimensions (h,w).   
  TV.set_pixel(1,1,WHITE);
  TV.set_pixel(126,1,WHITE);
  TV.select_font(font4x6);
  TV.println(4,2,"The");
  TV.select_font(font8x8);
  TV.println(17,6,"WALKING DEAD");  
  TV.select_font(font4x6);
  TV.println(7,16,"pinball");  
  TV.println(53,16,"made by crazybite");
  TV.set_pixel(1,18,WHITE);
  TV.set_pixel(126,18,WHITE);
  TV.draw_line(1,19,6,19,WHITE);
  TV.draw_line(35,19,52,19,WHITE);
  TV.draw_line(121,19,127,19,WHITE);
  TV.set_pixel(1,20,WHITE);
  TV.set_pixel(126,20,WHITE);
  TV.select_font(font8x8);
  TV.println(2,23,"HIGH SCORE: ABC"); // 4,294,967,295
  TV.draw_rect(16,32,108,17,BLACK,BLACK); // Draw a rectangle at (x,y) by dimensions (h,w), and fill with the given color.
  TV.bitmap(15,32,number_4);
  TV.bitmap(26,32,number_2);
  TV.bitmap(37,32,number_9);
  TV.bitmap(48,32,number_4);
  TV.bitmap(59,32,number_9);
  TV.bitmap(70,32,number_6);
  TV.bitmap(81,32,number_7);
  TV.bitmap(92,32,number_2);
  TV.bitmap(103,32,number_9);
  TV.bitmap(114,32,number_5);
  TV.set_pixel(1,51,WHITE);
  TV.set_pixel(126,51,WHITE);
  TV.bitmap(0,53,logo);
  TV.delay(10000);
  TV.clear_screen();  
}

// LOOP ROUTINE

void loop() {  
  
  // get the score from loops
  unsigned long num = loops; // as a reference, in our first test we entered this fixed value here 76384192
  unsigned int num1 = (num / 1U) % 10; // should give 7.
  unsigned int num2 = (num / 10U) % 10; // should give 6.
  unsigned int num3 = (num / 100U) % 10; // should give 3.
  unsigned int num4 = (num / 1000U) % 10; // should give 8.
  unsigned int num5 = (num / 10000U) % 10; // should give 4.
  unsigned int num6 = (num / 100000U) % 10; // should give 1.
  unsigned int num7 = (num / 1000000U) % 10; // should give 9.
  unsigned int num8 = (num / 10000000U) % 10; // should give 2.
  // lets try to take care of the exponents (e1,e2) unsigned long is maximum 10 digits.
  unsigned int num9 = (num / 100000000U) % 10;
  unsigned int num10 = (num / 1000000000U) % 10;

  // IF required uncomment for serial output.
  // Serial.println(exponentLevel);
  
  // We do not clear the entire screen.
  // At the right point we use TV.draw_rect(16,32,108,17,BLACK,BLACK);
  // To wipe the previous NUMBER that was there. To reduce flicker from clear_screen();
  // clear_screen();

  TV.draw_rect(0,0,127,52,WHITE); // Draw a rectangle at (x,y) by dimensions (h,w).
  TV.set_pixel(1,1,WHITE); // Set a pixel at (x,y).
  TV.set_pixel(126,1,WHITE); // Set a pixel at (x,y).
  TV.select_font(font4x6); // Select a new font type.
  TV.println(4,2,"The"); // Print text.
  TV.select_font(font8x8);
  TV.println(17,6,"WALKING DEAD");
  TV.set_pixel(1,18,WHITE); // Set a pixel at (x,y).
  TV.set_pixel(126,18,WHITE);
  TV.draw_line(1,19,127,19,WHITE); // Draw a line from (x,y) to (x,y) And set color.
  TV.set_pixel(1,20,WHITE);
  TV.set_pixel(126,20,WHITE);
  TV.select_font(font8x8);
  TV.println(2,23,"SCORE:");

  TV.draw_rect(16,32,108,17,BLACK,BLACK); // Draw a rectangle at (x,y) by dimensions (h,w), and fill with the given color. 
  
  if(num1 >= 0 and loops >= 1) {
    if(num1 == 0) {
      TV.bitmap(114,32,number_0); // Draw the number 0 from the bitmap array.
    }
    if(num1 == 1) {
      TV.bitmap(114,32,number_1); // Draw the number 1 from the bitmap array.
    }
    if(num1 == 2) {
      TV.bitmap(114,32,number_2); // Draw the number 2 from the bitmap array.
    }
    if(num1 == 3) {
      TV.bitmap(114,32,number_3); // Draw the number 3 from the bitmap array.
    }
    if(num1 == 4) {
      TV.bitmap(114,32,number_4); // Draw the number 4 from the bitmap array.
    }
    if(num1 == 5) {
      TV.bitmap(114,32,number_5); // Draw the number 5 from the bitmap array.
    }
    if(num1 == 6) {
      TV.bitmap(114,32,number_6); // Draw the number 6 from the bitmap array.
    }
    if(num1 == 7) {
      TV.bitmap(114,32,number_7); // Draw the number 7 from the bitmap array.
    }
    if(num1 == 8) {
      TV.bitmap(114,32,number_8); // Draw the number 8 from the bitmap array.
    }
    if(num1 == 9) {
      TV.bitmap(114,32,number_9); // Draw the number 9 from the bitmap array.
    }    
  }

  if(num2 >= 0 and loops >= 10) {
    if(num2 == 0) {
      TV.bitmap(103,32,number_0);
    }
    if(num2 == 1) {
      TV.bitmap(103,32,number_1);
    }
    if(num2 == 2) {
      TV.bitmap(103,32,number_2);
    }
    if(num2 == 3) {
      TV.bitmap(103,32,number_3);
    }
    if(num2 == 4) {
      TV.bitmap(103,32,number_4);
    }
    if(num2 == 5) {
      TV.bitmap(103,32,number_5);
    }
    if(num2 == 6) {
      TV.bitmap(103,32,number_6);
    }
    if(num2 == 7) {
      TV.bitmap(103,32,number_7);
    }
    if(num2 == 8) {
      TV.bitmap(103,32,number_8);
    }
    if(num2 == 9) {
      TV.bitmap(103,32,number_9);
    }    
  }

  if(num3 >= 0 and loops >= 100) {
    if(num3 == 0) {
      TV.bitmap(92,32,number_0);
    }
    if(num3 == 1) {
      TV.bitmap(92,32,number_1);
    }
    if(num3 == 2) {
      TV.bitmap(92,32,number_2);
    }
    if(num3 == 3) {
      TV.bitmap(92,32,number_3);
    }
    if(num3 == 4) {
      TV.bitmap(92,32,number_4);
    }
    if(num3 == 5) {
      TV.bitmap(92,32,number_5);
    }
    if(num3 == 6) {
      TV.bitmap(92,32,number_6);
    }
    if(num3 == 7) {
      TV.bitmap(92,32,number_7);
    }
    if(num3 == 8) {
      TV.bitmap(92,32,number_8);
    }
    if(num3 == 9) {
      TV.bitmap(92,32,number_9);
    }    
  }

  if(num4 >= 0 and loops >= 1000) {
    if(num4 == 0) {
      TV.bitmap(81,32,number_0);
    }
    if(num4 == 1) {
      TV.bitmap(81,32,number_1);
    }
    if(num4 == 2) {
      TV.bitmap(81,32,number_2);
    }
    if(num4 == 3) {
      TV.bitmap(81,32,number_3);
    }
    if(num4 == 4) {
      TV.bitmap(81,32,number_4);
    }
    if(num4 == 5) {
      TV.bitmap(81,32,number_5);
    }
    if(num4 == 6) {
      TV.bitmap(81,32,number_6);
    }
    if(num4 == 7) {
      TV.bitmap(81,32,number_7);
    }
    if(num4 == 8) {
      TV.bitmap(81,32,number_8);
    }
    if(num4 == 9) {
      TV.bitmap(81,32,number_9);
    }    
  }

  if(num5 >= 0 and loops >= 10000) {
    if(num5 == 0) {
      TV.bitmap(70,32,number_0);
    }
    if(num5 == 1) {
      TV.bitmap(70,32,number_1);
    }
    if(num5 == 2) {
      TV.bitmap(70,32,number_2);
    }
    if(num5 == 3) {
      TV.bitmap(70,32,number_3);
    }
    if(num5 == 4) {
      TV.bitmap(70,32,number_4);
    }
    if(num5 == 5) {
      TV.bitmap(70,32,number_5);
    }
    if(num5 == 6) {
      TV.bitmap(70,32,number_6);
    }
    if(num5 == 7) {
      TV.bitmap(70,32,number_7);
    }
    if(num5 == 8) {
      TV.bitmap(70,32,number_8);
    }
    if(num5 == 9) {
      TV.bitmap(70,32,number_9);
    }    
  }

  if(num6 >= 0 and loops >= 100000) {
    if(num6 == 0) {
      TV.bitmap(59,32,number_0);
    }
    if(num6 == 1) {
      TV.bitmap(59,32,number_1);
    }
    if(num6 == 2) {
      TV.bitmap(59,32,number_2);
    }
    if(num6 == 3) {
      TV.bitmap(59,32,number_3);
    }
    if(num6 == 4) {
      TV.bitmap(59,32,number_4);
    }
    if(num6 == 5) {
      TV.bitmap(59,32,number_5);
    }
    if(num6 == 6) {
      TV.bitmap(59,32,number_6);
    }
    if(num6 == 7) {
      TV.bitmap(59,32,number_7);
    }
    if(num6 == 8) {
      TV.bitmap(59,32,number_8);
    }
    if(num6 == 9) {
      TV.bitmap(59,32,number_9);
    }    
  }

  if(num7 >= 0 and loops >= 1000000) {
    if(num7 == 0) {
      TV.bitmap(48,32,number_0);
    }
    if(num7 == 1) {
      TV.bitmap(48,32,number_1);
    }
    if(num7 == 2) {
      TV.bitmap(48,32,number_2);
    }
    if(num7 == 3) {
      TV.bitmap(48,32,number_3);
    }
    if(num7 == 4) {
      TV.bitmap(48,32,number_4);
    }
    if(num7 == 5) {
      TV.bitmap(48,32,number_5);
    }
    if(num7 == 6) {
      TV.bitmap(48,32,number_6);
    }
    if(num7 == 7) {
      TV.bitmap(48,32,number_7);
    }
    if(num7 == 8) {
      TV.bitmap(48,32,number_8);
    }
    if(num7 == 9) {
      TV.bitmap(48,32,number_9);
    }    
  }

  if(num8 >= 0 and loops >= 10000000) {
    if(num8 == 0) {
      TV.bitmap(37,32,number_0);
    }
    if(num8 == 1) {
      TV.bitmap(37,32,number_1);
    }
    if(num8 == 2) {
      TV.bitmap(37,32,number_2);
    }
    if(num8 == 3) {
      TV.bitmap(37,32,number_3);
    }
    if(num8 == 4) {
      TV.bitmap(37,32,number_4);
    }
    if(num8 == 5) {
      TV.bitmap(37,32,number_5);
    }
    if(num8 == 6) {
      TV.bitmap(37,32,number_6);
    }
    if(num8 == 7) {
      TV.bitmap(37,32,number_7);
    }
    if(num8 == 8) {
      TV.bitmap(37,32,number_8);
    }
    if(num8 == 9) {
      TV.bitmap(37,32,number_9);
    }    
  }

  if(num9 >= 0 and loops >= 100000000) {
    if(num9 == 0) {
      TV.bitmap(26,32,number_0);
    }
    if(num9 == 1) {
      TV.bitmap(26,32,number_1);
    }
    if(num9 == 2) {
      TV.bitmap(26,32,number_2);
    }
    if(num9 == 3) {
      TV.bitmap(26,32,number_3);
    }
    if(num9 == 4) {
      TV.bitmap(26,32,number_4);
    }
    if(num9 == 5) {
      TV.bitmap(26,32,number_5);
    }
    if(num9 == 6) {
      TV.bitmap(26,32,number_6);
    }
    if(num9== 7) {
      TV.bitmap(26,32,number_7);
    }
    if(num9 == 8) {
      TV.bitmap(26,32,number_8);
    }
    if(num9 == 9) {
      TV.bitmap(26,32,number_9);
    }    
  }

  if(num10 >= 0 and loops >= 1000000000) {
    if(num10 == 0) {
      TV.bitmap(15,32,number_0);
    }
    if(num10 == 1) {
      TV.bitmap(15,32,number_1);
    }
    if(num10 == 2) {
      TV.bitmap(15,32,number_2);
    }
    if(num10 == 3) {
      TV.bitmap(15,32,number_3);
    }
    if(num10 == 4) {
      TV.bitmap(15,32,number_4);
    }
    if(num10 == 5) {
      TV.bitmap(15,32,number_5);
    }
    if(num10 == 6) {
      TV.bitmap(15,32,number_6);
    }
    if(num10 == 7) {
      TV.bitmap(15,32,number_7);
    }
    if(num10 == 8) {
      TV.bitmap(15,32,number_8);
    }
    if(num10 == 9) {
      TV.bitmap(15,32,number_9);
    }    
  }
  TV.set_pixel(1,51,WHITE); // Set a pixel at (x,y).
  TV.set_pixel(126,51,WHITE);

  TV.bitmap(0,53,logo); // Draw data from a bitmap array. (logo)

  // To reduce flickering, use TV.delay_frame(1);
  TV.delay_frame(1); 
  
  // Add to loops.
  loops++;
  // check and set exponents
  if (loops >= exponent) {
    // we need to give the exponent with margin for big scores.
    // we also need to reset the score counter to compensate.
    exponentLevel++;
  }
}

And here's a video of the result: TVout monitor test

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.