Protocol expects now 8 pixels per byte

This commit is contained in:
frubi
2019-12-14 01:19:00 +01:00
parent 1a6bb33b98
commit d9209b854c
2 changed files with 37 additions and 16 deletions

View File

@@ -45,22 +45,25 @@ void ProtocolDL::newByte(uint8_t data)
break;
default:
image->set_pixel(source.x, source.y, data);
for (int shift = 7; shift >= 0; shift--) {
byte pixel = (data >> shift) & 1;
image->set_pixel(source.x, source.y, pixel);
if(source.x == (source.width - 1) && source.y == (source.height - 1))
{
//this was the last pixel
complete = true;
cnt = 0;
}
else
{
source.x++;
if (source.x >= source.width) {
source.x = 0;
source.y++;
if (source.y >= source.height) {
source.y = 0;
if(source.x == (source.width - 1) && source.y == (source.height - 1))
{
//this was the last pixel
complete = true;
cnt = 0;
}
else
{
source.x++;
if (source.x >= source.width) {
source.x = 0;
source.y++;
if (source.y >= source.height) {
source.y = 0;
}
}
}
}