clang-format changes

This commit is contained in:
skullY 2019-08-30 11:19:03 -07:00 committed by skullydazed
parent 61af76a10d
commit b624f32f94
502 changed files with 32259 additions and 39062 deletions

View file

@ -7,24 +7,21 @@ Copyright 2010,2011,2012,2013 Jun WAKO <wakojun@gmail.com>
#include "ring_buffer.h"
#include "ibm4704.h"
#define WAIT(stat, us, err) do { \
if (!wait_##stat(us)) { \
ibm4704_error = err; \
goto ERROR; \
} \
} while (0)
#define WAIT(stat, us, err) \
do { \
if (!wait_##stat(us)) { \
ibm4704_error = err; \
goto ERROR; \
} \
} while (0)
uint8_t ibm4704_error = 0;
void ibm4704_init(void)
{
void ibm4704_init(void) {
inhibit(); // keep keyboard from sending
IBM4704_INT_INIT();
IBM4704_INT_ON();
idle(); // allow keyboard sending
idle(); // allow keyboard sending
}
/*
@ -46,9 +43,8 @@ Timing: After Request keyboard pull up Data and down Clock line to low for s
Host writes a bit while Clock is hi and Keyboard reads while low.
Stop bit: Host releases or pulls up Data line to hi after 9th clock and waits for keyboard pull down the line to lo.
*/
uint8_t ibm4704_send(uint8_t data)
{
bool parity = true; // odd parity
uint8_t ibm4704_send(uint8_t data) {
bool parity = true; // odd parity
ibm4704_error = 0;
IBM4704_INT_OFF();
@ -62,19 +58,23 @@ uint8_t ibm4704_send(uint8_t data)
/* Data bit */
for (uint8_t i = 0; i < 8; i++) {
WAIT(clock_hi, 100, 0x40+i);
if (data&(1<<i)) {
WAIT(clock_hi, 100, 0x40 + i);
if (data & (1 << i)) {
parity = !parity;
data_hi();
} else {
data_lo();
}
WAIT(clock_lo, 100, 0x48+i);
WAIT(clock_lo, 100, 0x48 + i);
}
/* Parity bit */
WAIT(clock_hi, 100, 0x34);
if (parity) { data_hi(); } else { data_lo(); }
if (parity) {
data_hi();
} else {
data_lo();
}
WAIT(clock_lo, 100, 0x35);
/* Stop bit */
@ -97,16 +97,14 @@ ERROR:
}
/* wait forever to receive data */
uint8_t ibm4704_recv_response(void)
{
uint8_t ibm4704_recv_response(void) {
while (!rbuf_has_data()) {
_delay_ms(1);
}
return rbuf_dequeue();
}
uint8_t ibm4704_recv(void)
{
uint8_t ibm4704_recv(void) {
if (rbuf_has_data()) {
return rbuf_dequeue();
} else {
@ -121,7 +119,7 @@ Data bits are LSB first and Parity is odd. Clock has around 60us high and 30us l
____ __ __ __ __ __ __ __ __ __ _______
Clock \_____/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/
____ ____ ____ ____ ____ ____ ____ ____ ____ ____
____ ____ ____ ____ ____ ____ ____ ____ ____ ____
Data ____/ X____X____X____X____X____X____X____X____X____X________
Start 0 1 2 3 4 5 6 7 P Stop
@ -130,11 +128,8 @@ Inhibit: Pull Data line down to inhibit keyboard to send.
Timing: Host reads bit while Clock is hi.(rising edge)
Stop bit: Keyboard pulls down Data line to lo after 9th clock.
*/
ISR(IBM4704_INT_VECT)
{
static enum {
BIT0, BIT1, BIT2, BIT3, BIT4, BIT5, BIT6, BIT7, PARITY, STOP
} state = BIT0;
ISR(IBM4704_INT_VECT) {
static enum { BIT0, BIT1, BIT2, BIT3, BIT4, BIT5, BIT6, BIT7, PARITY, STOP } state = BIT0;
// LSB first
static uint8_t data = 0;
// Odd parity
@ -161,8 +156,7 @@ ISR(IBM4704_INT_VECT)
if (data_in()) {
parity = !parity;
}
if (!parity)
goto ERROR;
if (!parity) goto ERROR;
break;
case STOP:
// Data:Low
@ -178,11 +172,11 @@ ISR(IBM4704_INT_VECT)
goto RETURN;
ERROR:
ibm4704_error = state;
while (ibm4704_send(0xFE)) _delay_ms(1); // resend
while (ibm4704_send(0xFE)) _delay_ms(1); // resend
xprintf("R:%02X%02X\n", state, data);
DONE:
state = BIT0;
data = 0;
state = BIT0;
data = 0;
parity = false;
RETURN:
return;