Nettoyage de code

This commit is contained in:
Ulysse Cura 2025-01-29 18:11:35 +01:00
parent 63d7cb2e5f
commit 3748c54515
4 changed files with 80 additions and 85 deletions

8
IO.hpp
View File

@ -39,7 +39,6 @@ class Motor {
void setSpeed(int speed) void setSpeed(int speed)
{ {
Serial.printf("Motor pin : %d\n", m_pin);
analogWrite(m_pin, speed); analogWrite(m_pin, speed);
} }
@ -95,7 +94,7 @@ class IO {
return m_is_tirette_pulled; return m_is_tirette_pulled;
} }
bool isColorBlue() bool isSelectedColorBlue()
{ {
return m_is_color_blue; return m_is_color_blue;
} }
@ -232,7 +231,7 @@ class IO {
float actual_angle = getAngle(Axes::Z); float actual_angle = getAngle(Axes::Z);
float error = m_dir - actual_angle; float error = m_dir - actual_angle;
float correction = error * KD; float correction = error * GAIN_KD;
int m1_speed = static_cast<int>(m_speed + correction); int m1_speed = static_cast<int>(m_speed + correction);
int m2_speed = static_cast<int>(m_speed - correction); int m2_speed = static_cast<int>(m_speed - correction);
@ -248,9 +247,6 @@ class IO {
m1_speed = static_cast<int>(m_speed + 2 * correction); m1_speed = static_cast<int>(m_speed + 2 * correction);
} }
Serial.printf("M1_Speed : %d\n", m1_speed);
Serial.printf("M2_Speed : %d\n", m2_speed);
m_motors[0].setSpeed(m1_speed); m_motors[0].setSpeed(m1_speed);
m_motors[1].setSpeed(m2_speed); m_motors[1].setSpeed(m2_speed);
} }

View File

@ -1,64 +0,0 @@
namespace Imgs
{
constexpr const unsigned char riombotique [] PROGMEM = {
0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x03, 0xe0, 0x00,
0x00, 0x00, 0x00, 0xc0, 0x00, 0x38, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x07, 0x86, 0x00, 0x00, 0x00, 0x04, 0x06,
0x0f, 0xc2, 0x00, 0x00, 0x00, 0x04, 0x19, 0x98, 0x62, 0x00, 0x00, 0x00, 0x04, 0x20, 0x50, 0x22,
0x00, 0x00, 0x00, 0x14, 0x20, 0x50, 0x22, 0xc0, 0x00, 0x00, 0x34, 0x20, 0x50, 0x22, 0xe0, 0x00,
0x00, 0x74, 0x20, 0x58, 0x62, 0xa0, 0x00, 0x00, 0xf4, 0x10, 0x8f, 0xc2, 0xb0, 0x00, 0x00, 0xf4,
0x0f, 0x07, 0x82, 0xb0, 0x00, 0x00, 0x74, 0x00, 0x00, 0x02, 0xa0, 0x00, 0x00, 0x34, 0x00, 0x00,
0x02, 0xc0, 0x00, 0x00, 0x14, 0x00, 0x00, 0x02, 0x80, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, 0x00,
0x00, 0x00, 0x04, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00,
0x03, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x02, 0x00,
0x00, 0x0c, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x01,
0x00, 0x00, 0x00, 0x08, 0x07, 0xff, 0x00, 0x80, 0x00, 0x00, 0x18, 0x07, 0xff, 0x00, 0x80, 0x00,
0x01, 0x98, 0x07, 0xff, 0x00, 0xc0, 0x00, 0x03, 0xd8, 0x00, 0x00, 0x00, 0xc4, 0x00, 0x03, 0x58,
0x00, 0x00, 0x00, 0xde, 0x00, 0x02, 0x38, 0x00, 0x00, 0x00, 0xfa, 0x00, 0x02, 0x38, 0x00, 0x00,
0x00, 0xe2, 0x00, 0x06, 0x78, 0x00, 0x00, 0x00, 0xe1, 0x00, 0x04, 0x78, 0x00, 0x00, 0x00, 0xe1,
0x00, 0x04, 0x78, 0x00, 0x00, 0x00, 0xe1, 0x00, 0x0c, 0x78, 0x00, 0x00, 0x00, 0xe1, 0x00, 0x08,
0xf8, 0x00, 0x00, 0x00, 0xf0, 0x80, 0x08, 0xf8, 0x00, 0x00, 0x00, 0xf0, 0x80, 0x08, 0x98, 0x00,
0x00, 0x00, 0xf0, 0x80, 0x11, 0x98, 0x00, 0x00, 0x00, 0xf0, 0x40, 0x19, 0x88, 0x00, 0x00, 0x00,
0x98, 0x40, 0x3f, 0x0c, 0x00, 0x00, 0x01, 0x0c, 0xc0, 0x36, 0x04, 0x00, 0x00, 0x01, 0x07, 0xe0,
0x22, 0x04, 0x00, 0x00, 0x01, 0x07, 0x20, 0x22, 0x06, 0x00, 0x00, 0x02, 0x04, 0x20, 0x62, 0x02,
0x00, 0x00, 0x02, 0x04, 0x20, 0x44, 0x02, 0x00, 0x00, 0x06, 0x02, 0x30, 0x44, 0x03, 0x00, 0x00,
0x04, 0x02, 0x10, 0x44, 0x01, 0x00, 0x60, 0x04, 0x02, 0x30, 0xc4, 0x01, 0x80, 0x60, 0x08, 0x03,
0xf0, 0xc8, 0x01, 0x80, 0x00, 0x18, 0x03, 0xb0, 0xf8, 0x00, 0xff, 0xff, 0xf0, 0x01, 0x20, 0x98,
0x00, 0x7f, 0xff, 0xe0, 0x01, 0xe0, 0x98, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfc, 0x00, 0x00
};
constexpr const unsigned char poivron_robotique [] PROGMEM = {
0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x60, 0x00, 0x00, 0x00, 0x00,
0x00, 0x02, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x01, 0xfe, 0x00, 0x21, 0x00, 0x00, 0x00, 0x06, 0x19,
0x80, 0x21, 0x00, 0x00, 0x00, 0x08, 0x06, 0x60, 0x42, 0x00, 0x00, 0x00, 0x10, 0x01, 0x10, 0x42,
0x00, 0x00, 0x00, 0x20, 0x00, 0x88, 0x42, 0x00, 0x00, 0x00, 0x20, 0x00, 0x44, 0x82, 0x00, 0x00,
0x00, 0x40, 0x00, 0x42, 0x84, 0x00, 0x00, 0x00, 0x80, 0x01, 0xfb, 0x04, 0x00, 0x00, 0x00, 0x80,
0x02, 0x06, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x86, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x49, 0x80, 0x00, 0x02, 0x00, 0x00, 0x00, 0x28, 0x60, 0x00, 0x02, 0x00, 0x00, 0x00, 0x18, 0x10,
0x00, 0x04, 0x00, 0x00, 0x00, 0x07, 0x08, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x00, 0x04,
0x00, 0x80, 0x00, 0x00, 0x24, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x13, 0x00, 0x08, 0x01, 0x00,
0x00, 0x00, 0x08, 0xc0, 0x10, 0x02, 0x00, 0x00, 0x00, 0x08, 0x20, 0x10, 0x02, 0x00, 0x00, 0x10,
0x04, 0x20, 0x10, 0x04, 0x00, 0x00, 0x10, 0x04, 0x10, 0x20, 0x04, 0x00, 0x00, 0x10, 0x00, 0x10,
0x20, 0x08, 0x00, 0x00, 0x20, 0x00, 0x10, 0x20, 0x08, 0x00, 0x00, 0x20, 0x00, 0x10, 0x20, 0x08,
0x00, 0x00, 0x40, 0x00, 0x10, 0x40, 0x10, 0x00, 0x00, 0x48, 0x00, 0x10, 0x40, 0x10, 0x00, 0x00,
0x8c, 0x00, 0x10, 0x40, 0x10, 0x00, 0x00, 0x9e, 0x01, 0x20, 0x40, 0x20, 0x00, 0x01, 0x1e, 0x03,
0x20, 0x40, 0x20, 0x00, 0x01, 0x1f, 0x07, 0x40, 0x80, 0x20, 0x00, 0x02, 0x0c, 0x0e, 0x40, 0x80,
0x40, 0x00, 0x02, 0x00, 0x00, 0x80, 0x80, 0x40, 0x00, 0x04, 0x00, 0x01, 0x00, 0x80, 0x40, 0x00,
0x04, 0x00, 0x01, 0x00, 0x80, 0x80, 0x00, 0x08, 0x00, 0x02, 0x00, 0x80, 0x80, 0x00, 0x08, 0x3f,
0x84, 0x00, 0x80, 0x80, 0x00, 0x10, 0xdf, 0xc4, 0x00, 0x80, 0x80, 0x00, 0x11, 0xdf, 0xe8, 0x00,
0x81, 0x00, 0x00, 0x27, 0xff, 0xb0, 0x00, 0x81, 0x00, 0x00, 0x2f, 0xff, 0xb0, 0x00, 0x81, 0x00,
0x00, 0x5f, 0xff, 0xe0, 0x00, 0x42, 0x00, 0x00, 0x5f, 0xff, 0xc0, 0x00, 0x42, 0x00, 0x00, 0xbf,
0xff, 0xc0, 0x00, 0x42, 0x00, 0x00, 0xbf, 0xff, 0x80, 0x00, 0x22, 0x00, 0x01, 0x3f, 0xff, 0x00,
0x00, 0x12, 0x00, 0x01, 0x3f, 0xfe, 0x00, 0x00, 0x0e, 0x00, 0x02, 0x1f, 0xfc, 0x00, 0x00, 0x02,
0x00, 0x04, 0x1f, 0xf8, 0x00, 0x00, 0x01, 0x00, 0x08, 0x0f, 0xf0, 0x00, 0x00, 0x00, 0x80, 0x10,
0x01, 0xe0, 0x00, 0x00, 0x00, 0x40, 0x20, 0x00, 0x80, 0x00, 0x00, 0x00, 0x3f, 0xc0, 0x03, 0x00,
0x00, 0x00, 0x00, 0x00, 0x30, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xe0, 0x00, 0x00, 0x00
};
}

View File

@ -1,6 +1,7 @@
#include "IO.hpp" #include "IO.hpp"
#include "Images.hpp" #include "Ressources.hpp"
// Unit tests activation
#define UNIT_TESTS #define UNIT_TESTS
/* /*
@ -72,16 +73,11 @@ void loop()
{ {
my_IO.update(); my_IO.update();
Serial.print("Is Tirette Pulled : "); //Serial.printf("Is Selected Color Blue : %d\n", my_IO.isSelectedColorBlue());
Serial.println(my_IO.isTirettePulled()); //Serial.printf("Is Tirette Pulled : %d\n", my_IO.isTirettePulled());
Serial.print("Is Color Blue : "); my_IO.setDirWithAngularSpeed(90);
Serial.println(my_IO.isColorBlue()); my_IO.setSpeed(1024.0f);
my_IO.m_motors[0].setSpeed(3200);
my_IO.m_motors[1].setSpeed(0);
//my_IO.setDir(0);
//my_IO.setSpeed(1024.0f);
} }
#else #else
@ -111,7 +107,7 @@ void loop()
case State::ForwardToRamp: case State::ForwardToRamp:
my_IO.forward(); my_IO.forward();
if(my_IO.getAngle() > 9) if(my_IO.getAngle(Axes::Y) > 9)
{ {
actual_state = State::ForwardToScene; actual_state = State::ForwardToScene;
} }
@ -120,14 +116,14 @@ void loop()
case State::ForwardToScene: case State::ForwardToScene:
IO::motors.forward(); IO::motors.forward();
if(IO::gyro.getAngle() < 1) if(IO::gyro.getAngle(Axes::Y) < 2)
{ {
actual_state = IO::ext_controls.isSelectedColorBlue() ? State::Turn90Blue : State::Turn90Yellow; actual_state = IO::ext_controls.isSelectedColorBlue() ? State::Turn90Blue : State::Turn90Yellow;
} }
break; break;
case State::Turn90Blue: case State::Turn90Blue:
IO::motors.turnLeft(); IO::motors.setDir(90);
if(IO::gyro.getAngle() > 90) if(IO::gyro.getAngle() > 90)
{ {
@ -136,9 +132,9 @@ void loop()
break; break;
case State::Turn90Yellow: case State::Turn90Yellow:
IO::motors.turnRight(); IO::motors.setAngle(-90);
if(IO::gyro.getAngle() > 90) if(IO::gyro.getAngle() < -90)
{ {
actual_state = State::ForwardToSceneEdge; actual_state = State::ForwardToSceneEdge;
} }

67
Ressources.hpp Normal file
View File

@ -0,0 +1,67 @@
namespace Res
{
namespace Imgs
{
constexpr const unsigned char riombotique [] PROGMEM = {
0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x03, 0xe0, 0x00,
0x00, 0x00, 0x00, 0xc0, 0x00, 0x38, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x07, 0x86, 0x00, 0x00, 0x00, 0x04, 0x06,
0x0f, 0xc2, 0x00, 0x00, 0x00, 0x04, 0x19, 0x98, 0x62, 0x00, 0x00, 0x00, 0x04, 0x20, 0x50, 0x22,
0x00, 0x00, 0x00, 0x14, 0x20, 0x50, 0x22, 0xc0, 0x00, 0x00, 0x34, 0x20, 0x50, 0x22, 0xe0, 0x00,
0x00, 0x74, 0x20, 0x58, 0x62, 0xa0, 0x00, 0x00, 0xf4, 0x10, 0x8f, 0xc2, 0xb0, 0x00, 0x00, 0xf4,
0x0f, 0x07, 0x82, 0xb0, 0x00, 0x00, 0x74, 0x00, 0x00, 0x02, 0xa0, 0x00, 0x00, 0x34, 0x00, 0x00,
0x02, 0xc0, 0x00, 0x00, 0x14, 0x00, 0x00, 0x02, 0x80, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, 0x00,
0x00, 0x00, 0x04, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00,
0x03, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x02, 0x00,
0x00, 0x0c, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x01,
0x00, 0x00, 0x00, 0x08, 0x07, 0xff, 0x00, 0x80, 0x00, 0x00, 0x18, 0x07, 0xff, 0x00, 0x80, 0x00,
0x01, 0x98, 0x07, 0xff, 0x00, 0xc0, 0x00, 0x03, 0xd8, 0x00, 0x00, 0x00, 0xc4, 0x00, 0x03, 0x58,
0x00, 0x00, 0x00, 0xde, 0x00, 0x02, 0x38, 0x00, 0x00, 0x00, 0xfa, 0x00, 0x02, 0x38, 0x00, 0x00,
0x00, 0xe2, 0x00, 0x06, 0x78, 0x00, 0x00, 0x00, 0xe1, 0x00, 0x04, 0x78, 0x00, 0x00, 0x00, 0xe1,
0x00, 0x04, 0x78, 0x00, 0x00, 0x00, 0xe1, 0x00, 0x0c, 0x78, 0x00, 0x00, 0x00, 0xe1, 0x00, 0x08,
0xf8, 0x00, 0x00, 0x00, 0xf0, 0x80, 0x08, 0xf8, 0x00, 0x00, 0x00, 0xf0, 0x80, 0x08, 0x98, 0x00,
0x00, 0x00, 0xf0, 0x80, 0x11, 0x98, 0x00, 0x00, 0x00, 0xf0, 0x40, 0x19, 0x88, 0x00, 0x00, 0x00,
0x98, 0x40, 0x3f, 0x0c, 0x00, 0x00, 0x01, 0x0c, 0xc0, 0x36, 0x04, 0x00, 0x00, 0x01, 0x07, 0xe0,
0x22, 0x04, 0x00, 0x00, 0x01, 0x07, 0x20, 0x22, 0x06, 0x00, 0x00, 0x02, 0x04, 0x20, 0x62, 0x02,
0x00, 0x00, 0x02, 0x04, 0x20, 0x44, 0x02, 0x00, 0x00, 0x06, 0x02, 0x30, 0x44, 0x03, 0x00, 0x00,
0x04, 0x02, 0x10, 0x44, 0x01, 0x00, 0x60, 0x04, 0x02, 0x30, 0xc4, 0x01, 0x80, 0x60, 0x08, 0x03,
0xf0, 0xc8, 0x01, 0x80, 0x00, 0x18, 0x03, 0xb0, 0xf8, 0x00, 0xff, 0xff, 0xf0, 0x01, 0x20, 0x98,
0x00, 0x7f, 0xff, 0xe0, 0x01, 0xe0, 0x98, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfc, 0x00, 0x00
};
constexpr const unsigned char poivron_robotique [] PROGMEM = {
0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x60, 0x00, 0x00, 0x00, 0x00,
0x00, 0x02, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x01, 0xfe, 0x00, 0x21, 0x00, 0x00, 0x00, 0x06, 0x19,
0x80, 0x21, 0x00, 0x00, 0x00, 0x08, 0x06, 0x60, 0x42, 0x00, 0x00, 0x00, 0x10, 0x01, 0x10, 0x42,
0x00, 0x00, 0x00, 0x20, 0x00, 0x88, 0x42, 0x00, 0x00, 0x00, 0x20, 0x00, 0x44, 0x82, 0x00, 0x00,
0x00, 0x40, 0x00, 0x42, 0x84, 0x00, 0x00, 0x00, 0x80, 0x01, 0xfb, 0x04, 0x00, 0x00, 0x00, 0x80,
0x02, 0x06, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x86, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x49, 0x80, 0x00, 0x02, 0x00, 0x00, 0x00, 0x28, 0x60, 0x00, 0x02, 0x00, 0x00, 0x00, 0x18, 0x10,
0x00, 0x04, 0x00, 0x00, 0x00, 0x07, 0x08, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x00, 0x04,
0x00, 0x80, 0x00, 0x00, 0x24, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x13, 0x00, 0x08, 0x01, 0x00,
0x00, 0x00, 0x08, 0xc0, 0x10, 0x02, 0x00, 0x00, 0x00, 0x08, 0x20, 0x10, 0x02, 0x00, 0x00, 0x10,
0x04, 0x20, 0x10, 0x04, 0x00, 0x00, 0x10, 0x04, 0x10, 0x20, 0x04, 0x00, 0x00, 0x10, 0x00, 0x10,
0x20, 0x08, 0x00, 0x00, 0x20, 0x00, 0x10, 0x20, 0x08, 0x00, 0x00, 0x20, 0x00, 0x10, 0x20, 0x08,
0x00, 0x00, 0x40, 0x00, 0x10, 0x40, 0x10, 0x00, 0x00, 0x48, 0x00, 0x10, 0x40, 0x10, 0x00, 0x00,
0x8c, 0x00, 0x10, 0x40, 0x10, 0x00, 0x00, 0x9e, 0x01, 0x20, 0x40, 0x20, 0x00, 0x01, 0x1e, 0x03,
0x20, 0x40, 0x20, 0x00, 0x01, 0x1f, 0x07, 0x40, 0x80, 0x20, 0x00, 0x02, 0x0c, 0x0e, 0x40, 0x80,
0x40, 0x00, 0x02, 0x00, 0x00, 0x80, 0x80, 0x40, 0x00, 0x04, 0x00, 0x01, 0x00, 0x80, 0x40, 0x00,
0x04, 0x00, 0x01, 0x00, 0x80, 0x80, 0x00, 0x08, 0x00, 0x02, 0x00, 0x80, 0x80, 0x00, 0x08, 0x3f,
0x84, 0x00, 0x80, 0x80, 0x00, 0x10, 0xdf, 0xc4, 0x00, 0x80, 0x80, 0x00, 0x11, 0xdf, 0xe8, 0x00,
0x81, 0x00, 0x00, 0x27, 0xff, 0xb0, 0x00, 0x81, 0x00, 0x00, 0x2f, 0xff, 0xb0, 0x00, 0x81, 0x00,
0x00, 0x5f, 0xff, 0xe0, 0x00, 0x42, 0x00, 0x00, 0x5f, 0xff, 0xc0, 0x00, 0x42, 0x00, 0x00, 0xbf,
0xff, 0xc0, 0x00, 0x42, 0x00, 0x00, 0xbf, 0xff, 0x80, 0x00, 0x22, 0x00, 0x01, 0x3f, 0xff, 0x00,
0x00, 0x12, 0x00, 0x01, 0x3f, 0xfe, 0x00, 0x00, 0x0e, 0x00, 0x02, 0x1f, 0xfc, 0x00, 0x00, 0x02,
0x00, 0x04, 0x1f, 0xf8, 0x00, 0x00, 0x01, 0x00, 0x08, 0x0f, 0xf0, 0x00, 0x00, 0x00, 0x80, 0x10,
0x01, 0xe0, 0x00, 0x00, 0x00, 0x40, 0x20, 0x00, 0x80, 0x00, 0x00, 0x00, 0x3f, 0xc0, 0x03, 0x00,
0x00, 0x00, 0x00, 0x00, 0x30, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xe0, 0x00, 0x00, 0x00
};
}
}