程式執行情況:
完整程式碼: led_show.c
#include <REGX52.h>
#include "led_seq.h"
#define D0 P3_3
#define D1 P3_2
#define D2 P3_1
#define D3 P3_0
#define LED_NUM_0 0xC0
#define LED_NUM_1 0xF9
#define LED_NUM_2 0xA4
#define LED_NUM_3 0xB0
#define LED_NUM_4 0x99
#define LED_NUM_5 0x92
#define LED_NUM_6 0x82
#define LED_NUM_7 0xF8
#define LED_NUM_8 0x80
#define LED_NUM_9 0x98
#define HIGH 1
#define LOW 0
#define LED_OUT P1
unsigned char led_num[10] =
{
LED_NUM_0, LED_NUM_1, LED_NUM_2, LED_NUM_3, LED_NUM_4,
LED_NUM_5, LED_NUM_6, LED_NUM_7, LED_NUM_8, LED_NUM_9
};
void my_delay(unsigned int n)
{
unsigned int i, j;
for(j=0; j<n; j++)
for(i=0; i<120; i++) ;
}
void led_write_1c(unsigned char r, unsigned char x)
{
P3 = ~(1 << (3-r)); //enable control bit: active LOW
LED_OUT = x;
my_delay(3);
LED_OUT = 0xFF;
}
void led_write_4c_num(unsigned short x)
{
led_write_1c(0, led_num[x%10 ]);
led_write_1c(1, led_num[x/10%10 ]);
led_write_1c(2, led_num[x/100%10]);
led_write_1c(3, led_num[x/1000 ]);
}
main()
{
unsigned char i;
unsigned short counter=0;
unsigned short show_num=0;
unsigned char LED_7_SEG[4] = {0xFF, 0xFF, 0XFF, 0XFF};
unsigned int seq_pointer = 0;
while(1)
{
// play test_seq, and update LED_7_SEG[]
if(counter == 0)
{
for(i=0; i<4; i++)
LED_7_SEG[3-i] = test_seq[seq_pointer][i];
}
if(test_seq[seq_pointer][4] == counter+5)
{
counter = 0;
seq_pointer++;
if(seq_pointer == TEST_SEQ_LEN) seq_pointer = 0;
}
else
counter++;
// display LED_7_SEG[]
for(i=0; i<4; i++)
led_write_1c(i, LED_7_SEG[i]);
}
}
led_seq.h(動畫內容)的內容:
#define TEST_SEQ_LEN 591
static unsigned char code test_seq[TEST_SEQ_LEN][5] = {
/* 1 bar circle around: 36 */
{0xfe, 0xff, 0xff, 0xff, 10},
{0xff, 0xfe, 0xff, 0xff, 10},
{0xff, 0xff, 0xfe, 0xff, 10},
{0xff, 0xff, 0xff, 0xfe, 10},
{0xff, 0xff, 0xff, 0xfd, 10},
{0xff, 0xff, 0xff, 0xfb, 10},
{0xff, 0xff, 0xff, 0xf7, 10},
{0xff, 0xff, 0xf7, 0xff, 10},
{0xff, 0xf7, 0xff, 0xff, 10},
{0xf7, 0xff, 0xff, 0xff, 10},
{0xef, 0xff, 0xff, 0xff, 10},
{0xdf, 0xff, 0xff, 0xff, 10},
{0xfe, 0xff, 0xff, 0xff, 10},
{0xff, 0xfe, 0xff, 0xff, 10},
{0xff, 0xff, 0xfe, 0xff, 10},
{0xff, 0xff, 0xff, 0xfe, 10},
{0xff, 0xff, 0xff, 0xfd, 10},
{0xff, 0xff, 0xff, 0xfb, 10},
{0xff, 0xff, 0xff, 0xf7, 10},
{0xff, 0xff, 0xf7, 0xff, 10},
{0xff, 0xf7, 0xff, 0xff, 10},
{0xf7, 0xff, 0xff, 0xff, 10},
{0xef, 0xff, 0xff, 0xff, 10},
{0xdf, 0xff, 0xff, 0xff, 10},
{0xfe, 0xff, 0xff, 0xff, 10},
{0xff, 0xfe, 0xff, 0xff, 10},
{0xff, 0xff, 0xfe, 0xff, 10},
{0xff, 0xff, 0xff, 0xfe, 10},
{0xff, 0xff, 0xff, 0xfd, 10},
{0xff, 0xff, 0xff, 0xfb, 10},
{0xff, 0xff, 0xff, 0xf7, 10},
{0xff, 0xff, 0xf7, 0xff, 10},
{0xff, 0xf7, 0xff, 0xff, 10},
{0xf7, 0xff, 0xff, 0xff, 10},
{0xef, 0xff, 0xff, 0xff, 10},
{0xdf, 0xff, 0xff, 0xff, 10},
/* circle all 4 seg.: 36 */
{0xfe, 0xff, 0xff, 0xff, 10},
{0xfe, 0xfe, 0xff, 0xff, 10},
{0xfe, 0xfe, 0xfe, 0xff, 10},
{0xfe, 0xfe, 0xfe, 0xfe, 10},
{0xfe, 0xfe, 0xfe, 0xfc, 10},
{0xfe, 0xfe, 0xfe, 0xf8, 10},
{0xfe, 0xfe, 0xfe, 0xf0, 10},
{0xfe, 0xfe, 0xf6, 0xf0, 10},
{0xfe, 0xf6, 0xf6, 0xf0, 10},
{0xf6, 0xf6, 0xf6, 0xf0, 10},
{0xe6, 0xf6, 0xf6, 0xf0, 10},
{0xc6, 0xf6, 0xf6, 0xf0, 10},
{0xfe, 0xff, 0xff, 0xff, 10},
{0xfe, 0xfe, 0xff, 0xff, 10},
{0xfe, 0xfe, 0xfe, 0xff, 10},
{0xfe, 0xfe, 0xfe, 0xfe, 10},
{0xfe, 0xfe, 0xfe, 0xfc, 10},
{0xfe, 0xfe, 0xfe, 0xf8, 10},
{0xfe, 0xfe, 0xfe, 0xf0, 10},
{0xfe, 0xfe, 0xf6, 0xf0, 10},
{0xfe, 0xf6, 0xf6, 0xf0, 10},
{0xf6, 0xf6, 0xf6, 0xf0, 10},
{0xe6, 0xf6, 0xf6, 0xf0, 10},
{0xc6, 0xf6, 0xf6, 0xf0, 10},
{0xfe, 0xff, 0xff, 0xff, 10},
{0xfe, 0xfe, 0xff, 0xff, 10},
{0xfe, 0xfe, 0xfe, 0xff, 10},
{0xfe, 0xfe, 0xfe, 0xfe, 10},
{0xfe, 0xfe, 0xfe, 0xfc, 10},
{0xfe, 0xfe, 0xfe, 0xf8, 10},
{0xfe, 0xfe, 0xfe, 0xf0, 10},
{0xfe, 0xfe, 0xf6, 0xf0, 10},
{0xfe, 0xf6, 0xf6, 0xf0, 10},
{0xf6, 0xf6, 0xf6, 0xf0, 10},
{0xe6, 0xf6, 0xf6, 0xf0, 10},
{0xc6, 0xf6, 0xf6, 0xf0, 10},
/* h snake: 48 */
{0xdf, 0xff, 0xff, 0xff, 10},
{0xde, 0xff, 0xff, 0xff, 10},
{0xde, 0xfe, 0xff, 0xff, 10},
{0xde, 0xfe, 0xfe, 0xff, 10},
{0xde, 0xfe, 0xfe, 0xfe, 10},
{0xde, 0xfe, 0xfe, 0xfc, 10},
{0xde, 0xfe, 0xfe, 0xbc, 10},
{0xde, 0xfe, 0xbe, 0xbc, 10},
{0xde, 0xbe, 0xbe, 0xbc, 10},
{0x9e, 0xbe, 0xbe, 0xbc, 10},
{0x8e, 0xbe, 0xbe, 0xbc, 10},
{0x86, 0xbe, 0xbe, 0xbc, 10},
{0x86, 0xb6, 0xbe, 0xbc, 10},
{0x86, 0xb6, 0xb6, 0xbc, 10},
{0x86, 0xb6, 0xb6, 0xb4, 10},
{0x86, 0xb6, 0xb6, 0xb0, 10},
{0xdf, 0xff, 0xff, 0xff, 10},
{0xde, 0xff, 0xff, 0xff, 10},
{0xde, 0xfe, 0xff, 0xff, 10},
{0xde, 0xfe, 0xfe, 0xff, 10},
{0xde, 0xfe, 0xfe, 0xfe, 10},
{0xde, 0xfe, 0xfe, 0xfc, 10},
{0xde, 0xfe, 0xfe, 0xbc, 10},
{0xde, 0xfe, 0xbe, 0xbc, 10},
{0xde, 0xbe, 0xbe, 0xbc, 10},
{0x9e, 0xbe, 0xbe, 0xbc, 10},
{0x8e, 0xbe, 0xbe, 0xbc, 10},
{0x86, 0xbe, 0xbe, 0xbc, 10},
{0x86, 0xb6, 0xbe, 0xbc, 10},
{0x86, 0xb6, 0xb6, 0xbc, 10},
{0x86, 0xb6, 0xb6, 0xb4, 10},
{0x86, 0xb6, 0xb6, 0xb0, 10},
{0xdf, 0xff, 0xff, 0xff, 10},
{0xde, 0xff, 0xff, 0xff, 10},
{0xde, 0xfe, 0xff, 0xff, 10},
{0xde, 0xfe, 0xfe, 0xff, 10},
{0xde, 0xfe, 0xfe, 0xfe, 10},
{0xde, 0xfe, 0xfe, 0xfc, 10},
{0xde, 0xfe, 0xfe, 0xbc, 10},
{0xde, 0xfe, 0xbe, 0xbc, 10},
{0xde, 0xbe, 0xbe, 0xbc, 10},
{0x9e, 0xbe, 0xbe, 0xbc, 10},
{0x8e, 0xbe, 0xbe, 0xbc, 10},
{0x86, 0xbe, 0xbe, 0xbc, 10},
{0x86, 0xb6, 0xbe, 0xbc, 10},
{0x86, 0xb6, 0xb6, 0xbc, 10},
{0x86, 0xb6, 0xb6, 0xb4, 10},
{0x86, 0xb6, 0xb6, 0xb0, 10},
/* 1 bar snake : 72 */
{0xef, 0xff, 0xff, 0xff, 10},
{0xdf, 0xff, 0xff, 0xff, 10},
{0xfe, 0xff, 0xff, 0xff, 10},
{0xfd, 0xff, 0xff, 0xff, 10},
{0xfb, 0xff, 0xff, 0xff, 10},
{0x7f, 0xff, 0xff, 0xff, 10},
{0xff, 0xef, 0xff, 0xff, 10},
{0xff, 0xdf, 0xff, 0xff, 10},
{0xff, 0xfe, 0xff, 0xff, 10},
{0xff, 0xfd, 0xff, 0xff, 10},
{0xff, 0xfb, 0xff, 0xff, 10},
{0xff, 0x7f, 0xff, 0xff, 10},
{0xff, 0xff, 0xef, 0xff, 10},
{0xff, 0xff, 0xdf, 0xff, 10},
{0xff, 0xff, 0xfe, 0xff, 10},
{0xff, 0xff, 0xfd, 0xff, 10},
{0xff, 0xff, 0xfb, 0xff, 10},
{0xff, 0xff, 0x7f, 0xff, 10},
{0xff, 0xff, 0xff, 0xef, 10},
{0xff, 0xff, 0xff, 0xdf, 10},
{0xff, 0xff, 0xff, 0xfe, 10},
{0xff, 0xff, 0xff, 0xfd, 10},
{0xff, 0xff, 0xff, 0xfb, 10},
{0xff, 0xff, 0xff, 0x7f, 10},
{0xef, 0xff, 0xff, 0xff, 10},
{0xdf, 0xff, 0xff, 0xff, 10},
{0xfe, 0xff, 0xff, 0xff, 10},
{0xfd, 0xff, 0xff, 0xff, 10},
{0xfb, 0xff, 0xff, 0xff, 10},
{0x7f, 0xff, 0xff, 0xff, 10},
{0xff, 0xef, 0xff, 0xff, 10},
{0xff, 0xdf, 0xff, 0xff, 10},
{0xff, 0xfe, 0xff, 0xff, 10},
{0xff, 0xfd, 0xff, 0xff, 10},
{0xff, 0xfb, 0xff, 0xff, 10},
{0xff, 0x7f, 0xff, 0xff, 10},
{0xff, 0xff, 0xef, 0xff, 10},
{0xff, 0xff, 0xdf, 0xff, 10},
{0xff, 0xff, 0xfe, 0xff, 10},
{0xff, 0xff, 0xfd, 0xff, 10},
{0xff, 0xff, 0xfb, 0xff, 10},
{0xff, 0xff, 0x7f, 0xff, 10},
{0xff, 0xff, 0xff, 0xef, 10},
{0xff, 0xff, 0xff, 0xdf, 10},
{0xff, 0xff, 0xff, 0xfe, 10},
{0xff, 0xff, 0xff, 0xfd, 10},
{0xff, 0xff, 0xff, 0xfb, 10},
{0xff, 0xff, 0xff, 0x7f, 10},
{0xef, 0xff, 0xff, 0xff, 10},
{0xdf, 0xff, 0xff, 0xff, 10},
{0xfe, 0xff, 0xff, 0xff, 10},
{0xfd, 0xff, 0xff, 0xff, 10},
{0xfb, 0xff, 0xff, 0xff, 10},
{0x7f, 0xff, 0xff, 0xff, 10},
{0xff, 0xef, 0xff, 0xff, 10},
{0xff, 0xdf, 0xff, 0xff, 10},
{0xff, 0xfe, 0xff, 0xff, 10},
{0xff, 0xfd, 0xff, 0xff, 10},
{0xff, 0xfb, 0xff, 0xff, 10},
{0xff, 0x7f, 0xff, 0xff, 10},
{0xff, 0xff, 0xef, 0xff, 10},
{0xff, 0xff, 0xdf, 0xff, 10},
{0xff, 0xff, 0xfe, 0xff, 10},
{0xff, 0xff, 0xfd, 0xff, 10},
{0xff, 0xff, 0xfb, 0xff, 10},
{0xff, 0xff, 0x7f, 0xff, 10},
{0xff, 0xff, 0xff, 0xef, 10},
{0xff, 0xff, 0xff, 0xdf, 10},
{0xff, 0xff, 0xff, 0xfe, 10},
{0xff, 0xff, 0xff, 0xfd, 10},
{0xff, 0xff, 0xff, 0xfb, 10},
{0xff, 0xff, 0xff, 0x7f, 10},
/*v snake: 60*/
{0xff, 0xff, 0xff, 0xfd, 10},
{0xff, 0xff, 0xff, 0xf9, 10},
{0xff, 0xff, 0xff, 0xf1, 10},
{0xff, 0xff, 0xff, 0xe1, 10},
{0xff, 0xff, 0xff, 0xc1, 10},
{0xff, 0xff, 0xfd, 0xc1, 10},
{0xff, 0xff, 0xf9, 0xc1, 10},
{0xff, 0xff, 0xf1, 0xc1, 10},
{0xff, 0xff, 0xe1, 0xc1, 10},
{0xff, 0xff, 0xc1, 0xc1, 10},
{0xff, 0xfd, 0xc1, 0xc1, 10},
{0xff, 0xf9, 0xc1, 0xc1, 10},
{0xff, 0xf1, 0xc1, 0xc1, 10},
{0xff, 0xe1, 0xc1, 0xc1, 10},
{0xff, 0xc1, 0xc1, 0xc1, 10},
{0xfd, 0xc1, 0xc1, 0xc1, 10},
{0xf9, 0xc1, 0xc1, 0xc1, 10},
{0xf1, 0xc1, 0xc1, 0xc1, 10},
{0xe1, 0xc1, 0xc1, 0xc1, 10},
{0xc1, 0xc1, 0xc1, 0xc1, 10},
{0xff, 0xff, 0xff, 0xfd, 10},
{0xff, 0xff, 0xff, 0xf9, 10},
{0xff, 0xff, 0xff, 0xf1, 10},
{0xff, 0xff, 0xff, 0xe1, 10},
{0xff, 0xff, 0xff, 0xc1, 10},
{0xff, 0xff, 0xfd, 0xc1, 10},
{0xff, 0xff, 0xf9, 0xc1, 10},
{0xff, 0xff, 0xf1, 0xc1, 10},
{0xff, 0xff, 0xe1, 0xc1, 10},
{0xff, 0xff, 0xc1, 0xc1, 10},
{0xff, 0xfd, 0xc1, 0xc1, 10},
{0xff, 0xf9, 0xc1, 0xc1, 10},
{0xff, 0xf1, 0xc1, 0xc1, 10},
{0xff, 0xe1, 0xc1, 0xc1, 10},
{0xff, 0xc1, 0xc1, 0xc1, 10},
{0xfd, 0xc1, 0xc1, 0xc1, 10},
{0xf9, 0xc1, 0xc1, 0xc1, 10},
{0xf1, 0xc1, 0xc1, 0xc1, 10},
{0xe1, 0xc1, 0xc1, 0xc1, 10},
{0xc1, 0xc1, 0xc1, 0xc1, 10},
{0xff, 0xff, 0xff, 0xfd, 10},
{0xff, 0xff, 0xff, 0xf9, 10},
{0xff, 0xff, 0xff, 0xf1, 10},
{0xff, 0xff, 0xff, 0xe1, 10},
{0xff, 0xff, 0xff, 0xc1, 10},
{0xff, 0xff, 0xfd, 0xc1, 10},
{0xff, 0xff, 0xf9, 0xc1, 10},
{0xff, 0xff, 0xf1, 0xc1, 10},
{0xff, 0xff, 0xe1, 0xc1, 10},
{0xff, 0xff, 0xc1, 0xc1, 10},
{0xff, 0xfd, 0xc1, 0xc1, 10},
{0xff, 0xf9, 0xc1, 0xc1, 10},
{0xff, 0xf1, 0xc1, 0xc1, 10},
{0xff, 0xe1, 0xc1, 0xc1, 10},
{0xff, 0xc1, 0xc1, 0xc1, 10},
{0xfd, 0xc1, 0xc1, 0xc1, 10},
{0xf9, 0xc1, 0xc1, 0xc1, 10},
{0xf1, 0xc1, 0xc1, 0xc1, 10},
{0xe1, 0xc1, 0xc1, 0xc1, 10},
{0xc1, 0xc1, 0xc1, 0xc1, 10},
/* 4 bar snake : 75*/
{0xff, 0xff, 0xff, 0xff, 10},
{0xef, 0xff, 0xff, 0xff, 10},
{0xcf, 0xff, 0xff, 0xff, 10},
{0xce, 0xff, 0xff, 0xff, 10},
{0xcc, 0xff, 0xff, 0xff, 10},
{0xd8, 0xff, 0xff, 0xff, 10},
{0xf8, 0xef, 0xff, 0xff, 10},
{0xf9, 0xcf, 0xff, 0xff, 10},
{0xfb, 0xce, 0xff, 0xff, 10},
{0xff, 0xcc, 0xff, 0xff, 10},
{0xff, 0xd8, 0xff, 0xff, 10},
{0xff, 0xf8, 0xef, 0xff, 10},
{0xff, 0xf9, 0xcf, 0xff, 10},
{0xff, 0xfb, 0xce, 0xff, 10},
{0xff, 0xff, 0xcc, 0xff, 10},
{0xff, 0xff, 0xd8, 0xff, 10},
{0xff, 0xff, 0xf8, 0xef, 10},
{0xff, 0xff, 0xf9, 0xcf, 10},
{0xff, 0xff, 0xfb, 0xce, 10},
{0xff, 0xff, 0xff, 0xcc, 10},
{0xff, 0xff, 0xff, 0xd8, 10},
{0xff, 0xff, 0xff, 0xf8, 10},
{0xff, 0xff, 0xff, 0xf9, 10},
{0xff, 0xff, 0xff, 0xfb, 10},
{0xff, 0xff, 0xff, 0xff, 10},
{0xff, 0xff, 0xff, 0xff, 10},
{0xef, 0xff, 0xff, 0xff, 10},
{0xcf, 0xff, 0xff, 0xff, 10},
{0xce, 0xff, 0xff, 0xff, 10},
{0xcc, 0xff, 0xff, 0xff, 10},
{0xd8, 0xff, 0xff, 0xff, 10},
{0xf8, 0xef, 0xff, 0xff, 10},
{0xf9, 0xcf, 0xff, 0xff, 10},
{0xfb, 0xce, 0xff, 0xff, 10},
{0xff, 0xcc, 0xff, 0xff, 10},
{0xff, 0xd8, 0xff, 0xff, 10},
{0xff, 0xf8, 0xef, 0xff, 10},
{0xff, 0xf9, 0xcf, 0xff, 10},
{0xff, 0xfb, 0xce, 0xff, 10},
{0xff, 0xff, 0xcc, 0xff, 10},
{0xff, 0xff, 0xd8, 0xff, 10},
{0xff, 0xff, 0xf8, 0xef, 10},
{0xff, 0xff, 0xf9, 0xcf, 10},
{0xff, 0xff, 0xfb, 0xce, 10},
{0xff, 0xff, 0xff, 0xcc, 10},
{0xff, 0xff, 0xff, 0xd8, 10},
{0xff, 0xff, 0xff, 0xf8, 10},
{0xff, 0xff, 0xff, 0xf9, 10},
{0xff, 0xff, 0xff, 0xfb, 10},
{0xff, 0xff, 0xff, 0xff, 10},
{0xff, 0xff, 0xff, 0xff, 10},
{0xef, 0xff, 0xff, 0xff, 10},
{0xcf, 0xff, 0xff, 0xff, 10},
{0xce, 0xff, 0xff, 0xff, 10},
{0xcc, 0xff, 0xff, 0xff, 10},
{0xd8, 0xff, 0xff, 0xff, 10},
{0xf8, 0xef, 0xff, 0xff, 10},
{0xf9, 0xcf, 0xff, 0xff, 10},
{0xfb, 0xce, 0xff, 0xff, 10},
{0xff, 0xcc, 0xff, 0xff, 10},
{0xff, 0xd8, 0xff, 0xff, 10},
{0xff, 0xf8, 0xef, 0xff, 10},
{0xff, 0xf9, 0xcf, 0xff, 10},
{0xff, 0xfb, 0xce, 0xff, 10},
{0xff, 0xff, 0xcc, 0xff, 10},
{0xff, 0xff, 0xd8, 0xff, 10},
{0xff, 0xff, 0xf8, 0xef, 10},
{0xff, 0xff, 0xf9, 0xcf, 10},
{0xff, 0xff, 0xfb, 0xce, 10},
{0xff, 0xff, 0xff, 0xcc, 10},
{0xff, 0xff, 0xff, 0xd8, 10},
{0xff, 0xff, 0xff, 0xf8, 10},
{0xff, 0xff, 0xff, 0xf9, 10},
{0xff, 0xff, 0xff, 0xfb, 10},
{0xff, 0xff, 0xff, 0xff, 10},
/* h spand :54 */
{0xff, 0xff, 0xff, 0xff, 10},
{0xff, 0xff, 0xff, 0xf9, 10},
{0xff, 0xff, 0xff, 0xc9, 10},
{0xff, 0xff, 0xf9, 0xc9, 10},
{0xff, 0xff, 0xc9, 0xc9, 10},
{0xff, 0xf9, 0xc9, 0xc9, 10},
{0xff, 0xc9, 0xc9, 0xc9, 10},
{0xf9, 0xc9, 0xc9, 0xc9, 10},
{0xc9, 0xc9, 0xc9, 0xc9, 10},
{0xc9, 0xc9, 0xc9, 0xc9, 10},
{0xf9, 0xc9, 0xc9, 0xc9, 10},
{0xff, 0xc9, 0xc9, 0xc9, 10},
{0xff, 0xf9, 0xc9, 0xc9, 10},
{0xff, 0xff, 0xc9, 0xc9, 10},
{0xff, 0xff, 0xf9, 0xc9, 10},
{0xff, 0xff, 0xff, 0xc9, 10},
{0xff, 0xff, 0xff, 0xf9, 10},
{0xff, 0xff, 0xff, 0xff, 10},
{0xff, 0xff, 0xff, 0xff, 10},
{0xff, 0xff, 0xff, 0xf9, 10},
{0xff, 0xff, 0xff, 0xc9, 10},
{0xff, 0xff, 0xf9, 0xc9, 10},
{0xff, 0xff, 0xc9, 0xc9, 10},
{0xff, 0xf9, 0xc9, 0xc9, 10},
{0xff, 0xc9, 0xc9, 0xc9, 10},
{0xf9, 0xc9, 0xc9, 0xc9, 10},
{0xc9, 0xc9, 0xc9, 0xc9, 10},
{0xc9, 0xc9, 0xc9, 0xc9, 10},
{0xf9, 0xc9, 0xc9, 0xc9, 10},
{0xff, 0xc9, 0xc9, 0xc9, 10},
{0xff, 0xf9, 0xc9, 0xc9, 10},
{0xff, 0xff, 0xc9, 0xc9, 10},
{0xff, 0xff, 0xf9, 0xc9, 10},
{0xff, 0xff, 0xff, 0xc9, 10},
{0xff, 0xff, 0xff, 0xf9, 10},
{0xff, 0xff, 0xff, 0xff, 10},
{0xff, 0xff, 0xff, 0xff, 10},
{0xff, 0xff, 0xff, 0xf9, 10},
{0xff, 0xff, 0xff, 0xc9, 10},
{0xff, 0xff, 0xf9, 0xc9, 10},
{0xff, 0xff, 0xc9, 0xc9, 10},
{0xff, 0xf9, 0xc9, 0xc9, 10},
{0xff, 0xc9, 0xc9, 0xc9, 10},
{0xf9, 0xc9, 0xc9, 0xc9, 10},
{0xc9, 0xc9, 0xc9, 0xc9, 10},
{0xc9, 0xc9, 0xc9, 0xc9, 10},
{0xf9, 0xc9, 0xc9, 0xc9, 10},
{0xff, 0xc9, 0xc9, 0xc9, 10},
{0xff, 0xf9, 0xc9, 0xc9, 10},
{0xff, 0xff, 0xc9, 0xc9, 10},
{0xff, 0xff, 0xf9, 0xc9, 10},
{0xff, 0xff, 0xff, 0xc9, 10},
{0xff, 0xff, 0xff, 0xf9, 10},
{0xff, 0xff, 0xff, 0xff, 10},
/* 2 way h spand: 54*/
{0xff, 0xff, 0xff, 0xff, 10},
{0xdf, 0xff, 0xff, 0xfb, 10},
{0xdd, 0xff, 0xff, 0xeb, 10},
{0xdd, 0xdf, 0xfb, 0xeb, 10},
{0xdd, 0xdd, 0xeb, 0xeb, 10},
{0xdd, 0xd9, 0xcb, 0xeb, 10},
{0xdd, 0xc9, 0xc9, 0xeb, 10},
{0xd9, 0xc9, 0xc9, 0xcb, 10},
{0xc9, 0xc9, 0xc9, 0xc9, 10},
{0xc9, 0xc9, 0xc9, 0xc9, 10},
{0xd9, 0xc9, 0xc9, 0xcb, 10},
{0xdd, 0xc9, 0xc9, 0xeb, 10},
{0xdd, 0xd9, 0xcb, 0xeb, 10},
{0xdd, 0xdd, 0xeb, 0xeb, 10},
{0xdd, 0xdf, 0xfb, 0xeb, 10},
{0xdd, 0xff, 0xff, 0xeb, 10},
{0xdf, 0xff, 0xff, 0xfb, 10},
{0xff, 0xff, 0xff, 0xff, 10},
{0xff, 0xff, 0xff, 0xff, 10},
{0xdf, 0xff, 0xff, 0xfb, 10},
{0xdd, 0xff, 0xff, 0xeb, 10},
{0xdd, 0xdf, 0xfb, 0xeb, 10},
{0xdd, 0xdd, 0xeb, 0xeb, 10},
{0xdd, 0xd9, 0xcb, 0xeb, 10},
{0xdd, 0xc9, 0xc9, 0xeb, 10},
{0xd9, 0xc9, 0xc9, 0xcb, 10},
{0xc9, 0xc9, 0xc9, 0xc9, 10},
{0xc9, 0xc9, 0xc9, 0xc9, 10},
{0xd9, 0xc9, 0xc9, 0xcb, 10},
{0xdd, 0xc9, 0xc9, 0xeb, 10},
{0xdd, 0xd9, 0xcb, 0xeb, 10},
{0xdd, 0xdd, 0xeb, 0xeb, 10},
{0xdd, 0xdf, 0xfb, 0xeb, 10},
{0xdd, 0xff, 0xff, 0xeb, 10},
{0xdf, 0xff, 0xff, 0xfb, 10},
{0xff, 0xff, 0xff, 0xff, 10},
{0xff, 0xff, 0xff, 0xff, 10},
{0xdf, 0xff, 0xff, 0xfb, 10},
{0xdd, 0xff, 0xff, 0xeb, 10},
{0xdd, 0xdf, 0xfb, 0xeb, 10},
{0xdd, 0xdd, 0xeb, 0xeb, 10},
{0xdd, 0xd9, 0xcb, 0xeb, 10},
{0xdd, 0xc9, 0xc9, 0xeb, 10},
{0xd9, 0xc9, 0xc9, 0xcb, 10},
{0xc9, 0xc9, 0xc9, 0xc9, 10},
{0xc9, 0xc9, 0xc9, 0xc9, 10},
{0xd9, 0xc9, 0xc9, 0xcb, 10},
{0xdd, 0xc9, 0xc9, 0xeb, 10},
{0xdd, 0xd9, 0xcb, 0xeb, 10},
{0xdd, 0xdd, 0xeb, 0xeb, 10},
{0xdd, 0xdf, 0xfb, 0xeb, 10},
{0xdd, 0xff, 0xff, 0xeb, 10},
{0xdf, 0xff, 0xff, 0xfb, 10},
{0xff, 0xff, 0xff, 0xff, 10},
/* small squares h flip : 18*/
{0x9c, 0x9c, 0x9c, 0x9c, 30},
{0xa3, 0xa3, 0xa3, 0xa3, 30},
{0x9c, 0x9c, 0xa3, 0xa3, 30},
{0xa3, 0xa3, 0x9c, 0x9c, 30},
{0xa3, 0xa3, 0xa3, 0xa3, 30},
{0x9c, 0x9c, 0x9c, 0x9c, 30},
{0x9c, 0x9c, 0x9c, 0x9c, 30},
{0xa3, 0xa3, 0xa3, 0xa3, 30},
{0x9c, 0x9c, 0xa3, 0xa3, 30},
{0xa3, 0xa3, 0x9c, 0x9c, 30},
{0xa3, 0xa3, 0xa3, 0xa3, 30},
{0x9c, 0x9c, 0x9c, 0x9c, 30},
{0x9c, 0x9c, 0x9c, 0x9c, 30},
{0xa3, 0xa3, 0xa3, 0xa3, 30},
{0x9c, 0x9c, 0xa3, 0xa3, 30},
{0xa3, 0xa3, 0x9c, 0x9c, 30},
{0xa3, 0xa3, 0xa3, 0xa3, 30},
{0x9c, 0x9c, 0x9c, 0x9c, 30},
/* small square run around: 24 */
{0x9c, 0xff, 0xff, 0xff, 15},
{0xff, 0x9c, 0xff, 0xff, 15},
{0xff, 0xff, 0x9c, 0xff, 15},
{0xff, 0xff, 0xff, 0x9c, 15},
{0xff, 0xff, 0xff, 0xa3, 15},
{0xff, 0xff, 0xa3, 0xff, 15},
{0xff, 0xa3, 0xff, 0xff, 15},
{0xa3, 0xff, 0xff, 0xff, 15},
{0x9c, 0xff, 0xff, 0xff, 15},
{0xff, 0x9c, 0xff, 0xff, 15},
{0xff, 0xff, 0x9c, 0xff, 15},
{0xff, 0xff, 0xff, 0x9c, 15},
{0xff, 0xff, 0xff, 0xa3, 15},
{0xff, 0xff, 0xa3, 0xff, 15},
{0xff, 0xa3, 0xff, 0xff, 15},
{0xa3, 0xff, 0xff, 0xff, 15},
{0x9c, 0xff, 0xff, 0xff, 15},
{0xff, 0x9c, 0xff, 0xff, 15},
{0xff, 0xff, 0x9c, 0xff, 15},
{0xff, 0xff, 0xff, 0x9c, 15},
{0xff, 0xff, 0xff, 0xa3, 15},
{0xff, 0xff, 0xa3, 0xff, 15},
{0xff, 0xa3, 0xff, 0xff, 15},
{0xa3, 0xff, 0xff, 0xff, 15},
/* small square snake run: 42*/
{0x9c, 0xff, 0xff, 0xff, 15},
{0xa3, 0xff, 0xff, 0xff, 15},
{0xff, 0xa3, 0xff, 0xff, 15},
{0xff, 0x9c, 0xff, 0xff, 15},
{0xff, 0xff, 0x9c, 0xff, 15},
{0xff, 0xff, 0xa3, 0xff, 15},
{0xff, 0xff, 0xff, 0xa3, 15},
{0xff, 0xff, 0xff, 0x9c, 15},
{0xff, 0xff, 0x9c, 0xff, 15},
{0xff, 0xff, 0xa3, 0xff, 15},
{0xff, 0xa3, 0xff, 0xff, 15},
{0xff, 0x9c, 0xff, 0xff, 15},
{0x9c, 0xff, 0xff, 0xff, 15},
{0xa3, 0xff, 0xff, 0xff, 15},
{0x9c, 0xff, 0xff, 0xff, 15},
{0xa3, 0xff, 0xff, 0xff, 15},
{0xff, 0xa3, 0xff, 0xff, 15},
{0xff, 0x9c, 0xff, 0xff, 15},
{0xff, 0xff, 0x9c, 0xff, 15},
{0xff, 0xff, 0xa3, 0xff, 15},
{0xff, 0xff, 0xff, 0xa3, 15},
{0xff, 0xff, 0xff, 0x9c, 15},
{0xff, 0xff, 0x9c, 0xff, 15},
{0xff, 0xff, 0xa3, 0xff, 15},
{0xff, 0xa3, 0xff, 0xff, 15},
{0xff, 0x9c, 0xff, 0xff, 15},
{0x9c, 0xff, 0xff, 0xff, 15},
{0xa3, 0xff, 0xff, 0xff, 15},
{0x9c, 0xff, 0xff, 0xff, 15},
{0xa3, 0xff, 0xff, 0xff, 15},
{0xff, 0xa3, 0xff, 0xff, 15},
{0xff, 0x9c, 0xff, 0xff, 15},
{0xff, 0xff, 0x9c, 0xff, 15},
{0xff, 0xff, 0xa3, 0xff, 15},
{0xff, 0xff, 0xff, 0xa3, 15},
{0xff, 0xff, 0xff, 0x9c, 15},
{0xff, 0xff, 0x9c, 0xff, 15},
{0xff, 0xff, 0xa3, 0xff, 15},
{0xff, 0xa3, 0xff, 0xff, 15},
{0xff, 0x9c, 0xff, 0xff, 15},
{0x9c, 0xff, 0xff, 0xff, 15},
{0xa3, 0xff, 0xff, 0xff, 15},
/* fuel mode : 72*/
{0xf7, 0xff, 0xff, 0xff, 10},
{0xb7, 0xff, 0xff, 0xff, 10},
{0xb6, 0xff, 0xff, 0xff, 10},
{0xb6, 0xf7, 0xff, 0xff, 10},
{0xb6, 0xb7, 0xff, 0xff, 10},
{0xb6, 0xb6, 0xff, 0xff, 10},
{0xb6, 0xb6, 0xf7, 0xff, 10},
{0xb6, 0xb6, 0xb7, 0xff, 10},
{0xb6, 0xb6, 0xb6, 0xff, 10},
{0xb6, 0xb6, 0xb6, 0xf7, 10},
{0xb6, 0xb6, 0xb6, 0xb7, 10},
{0xb6, 0xb6, 0xb6, 0xb6, 10},
{0xb6, 0xb6, 0xb6, 0xb0, 10},
{0xb6, 0xb6, 0xb6, 0x80, 10},
{0xb6, 0xb6, 0xb0, 0x80, 10},
{0xb6, 0xb6, 0x80, 0x80, 10},
{0xb6, 0xb0, 0x80, 0x80, 10},
{0xb6, 0x80, 0x80, 0x80, 10},
{0xb0, 0x80, 0x80, 0x80, 10},
{0x80, 0x80, 0x80, 0x80, 10},
{0x80, 0x80, 0x80, 0x00, 10},
{0x80, 0x80, 0x00, 0x00, 10},
{0x80, 0x00, 0x00, 0x00, 10},
{0x00, 0x00, 0x00, 0x00, 10},
{0xf7, 0xff, 0xff, 0xff, 10},
{0xb7, 0xff, 0xff, 0xff, 10},
{0xb6, 0xff, 0xff, 0xff, 10},
{0xb6, 0xf7, 0xff, 0xff, 10},
{0xb6, 0xb7, 0xff, 0xff, 10},
{0xb6, 0xb6, 0xff, 0xff, 10},
{0xb6, 0xb6, 0xf7, 0xff, 10},
{0xb6, 0xb6, 0xb7, 0xff, 10},
{0xb6, 0xb6, 0xb6, 0xff, 10},
{0xb6, 0xb6, 0xb6, 0xf7, 10},
{0xb6, 0xb6, 0xb6, 0xb7, 10},
{0xb6, 0xb6, 0xb6, 0xb6, 10},
{0xb6, 0xb6, 0xb6, 0xb0, 10},
{0xb6, 0xb6, 0xb6, 0x80, 10},
{0xb6, 0xb6, 0xb0, 0x80, 10},
{0xb6, 0xb6, 0x80, 0x80, 10},
{0xb6, 0xb0, 0x80, 0x80, 10},
{0xb6, 0x80, 0x80, 0x80, 10},
{0xb0, 0x80, 0x80, 0x80, 10},
{0x80, 0x80, 0x80, 0x80, 10},
{0x80, 0x80, 0x80, 0x00, 10},
{0x80, 0x80, 0x00, 0x00, 10},
{0x80, 0x00, 0x00, 0x00, 10},
{0x00, 0x00, 0x00, 0x00, 10},
{0xf7, 0xff, 0xff, 0xff, 10},
{0xb7, 0xff, 0xff, 0xff, 10},
{0xb6, 0xff, 0xff, 0xff, 10},
{0xb6, 0xf7, 0xff, 0xff, 10},
{0xb6, 0xb7, 0xff, 0xff, 10},
{0xb6, 0xb6, 0xff, 0xff, 10},
{0xb6, 0xb6, 0xf7, 0xff, 10},
{0xb6, 0xb6, 0xb7, 0xff, 10},
{0xb6, 0xb6, 0xb6, 0xff, 10},
{0xb6, 0xb6, 0xb6, 0xf7, 10},
{0xb6, 0xb6, 0xb6, 0xb7, 10},
{0xb6, 0xb6, 0xb6, 0xb6, 10},
{0xb6, 0xb6, 0xb6, 0xb0, 10},
{0xb6, 0xb6, 0xb6, 0x80, 10},
{0xb6, 0xb6, 0xb0, 0x80, 10},
{0xb6, 0xb6, 0x80, 0x80, 10},
{0xb6, 0xb0, 0x80, 0x80, 10},
{0xb6, 0x80, 0x80, 0x80, 10},
{0xb0, 0x80, 0x80, 0x80, 10},
{0x80, 0x80, 0x80, 0x80, 10},
{0x80, 0x80, 0x80, 0x00, 10},
{0x80, 0x80, 0x00, 0x00, 10},
{0x80, 0x00, 0x00, 0x00, 10},
{0x00, 0x00, 0x00, 0x00, 10},
};