Cut superfluous code down to the bone

This commit is contained in:
XANTRONIX Development 2016-05-31 23:28:55 -05:00
parent 0e37c57a3a
commit eba12edc65
5 changed files with 6 additions and 75 deletions

View file

@ -16,28 +16,11 @@ static volatile tabby_printer_packet_header header = {
.size = 0
};
static volatile uint8_t body[648];
static volatile uint16_t sum = 0;
static volatile uint16_t i = 0,
b = 0;
static inline uint16_t checksum() {
uint16_t ret = header.data[2]
+ header.data[3]
+ header.data[4]
+ header.data[5];
size_t i;
for (i=0; i<header.size; i++) {
ret += ((uint8_t *)body)[i];
}
return ret;
}
/*
* SPI byte receipt interrupt vector
*/
@ -107,18 +90,14 @@ ISR(SPI_STC_vect) {
default: {
if (b < header.size) {
body[b++] = value;
} else if (b == header.size) {
sum >>= 8;
sum |= value << 8;
b++;
SPDR = 0;
} else if (b == header.size) {
b++;
SPDR = 0;
} else if (b == header.size + 1) {
sum >>= 8;
sum |= value << 8;
b++;
SPDR = 0x81;

View file

@ -44,8 +44,6 @@ int main(int argc, char **argv) {
}
while (1) {
uint8_t value;
status = tabby_printer_packet_recv(fd, &header, &body, &checksum);
if (status < 0) {
@ -64,9 +62,6 @@ int main(int argc, char **argv) {
return 0;
error_link_send:
tabby_link_close(fd);
error_link_open:
return 1;
}

View file

@ -17,12 +17,4 @@ int tabby_link_open(const char *dev);
int tabby_link_close(int fd);
ssize_t tabby_link_send(int fd, void *buf, uint16_t len);
ssize_t tabby_link_recv(int fd, void *buf, uint16_t len);
int tabby_link_set_clock_source(int fd, tabby_clock_source source);
int tabby_link_set_clock_speed(int fd, tabby_clock_speed speed);
#endif /* _TABBY_LINK_H */

View file

@ -37,38 +37,3 @@ error_open:
int tabby_link_close(int fd) {
return close(fd);
}
ssize_t tabby_link_send(int fd, void *buf, uint16_t len) {
uint8_t header[3] = {
TABBY_COMMAND_SEND, (len & 0xff00) >> 8, len & 0xff
};
if (write(fd, &header, sizeof(header)) < 0) {
goto error_write_header;
}
return write(fd, buf, (size_t)len);
error_write_header:
return -1;
}
ssize_t tabby_link_recv(int fd, void *buf, uint16_t len) {
return read(fd, buf, (size_t)len);
}
int tabby_link_set_clock_source(int fd, tabby_clock_source source) {
uint8_t packet[2] = {
TABBY_COMMAND_CLOCK_SOURCE, source
};
return write(fd, &packet, sizeof(packet));
}
int tabby_link_set_clock_speed(int fd, tabby_clock_speed speed) {
uint8_t packet[2] = {
TABBY_COMMAND_CLOCK_SPEED, speed
};
return write(fd, &packet, sizeof(packet));
}

View file

@ -34,7 +34,7 @@ int tabby_printer_packet_recv(int fd, tabby_printer_packet_header *header,
*sum = 0;
while ((len = tabby_link_recv(fd, &value, 1)) >= 0) {
while ((len = read(fd, &value, 1)) >= 0) {
if (i == 0) {
if (value == 0x88) {
header->preamble[0] = value;
@ -91,5 +91,5 @@ int tabby_printer_response_send(int fd, uint8_t device, uint8_t status) {
device, status
};
return tabby_link_send(fd, &response, sizeof(response));
return write(fd, &response, sizeof(response));
}