(Apple) More style nit cleanups

This commit is contained in:
twinaphex 2014-04-26 03:18:52 +02:00
parent f72de0030f
commit 366d2d1879
3 changed files with 88 additions and 73 deletions

View File

@ -56,7 +56,7 @@ static void hidpad_ps3_send_control(struct hidpad_ps3_data* device)
static void* hidpad_ps3_connect(struct apple_pad_connection* connection, uint32_t slot) static void* hidpad_ps3_connect(struct apple_pad_connection* connection, uint32_t slot)
{ {
struct hidpad_ps3_data* device = calloc(1, sizeof(struct hidpad_ps3_data)); struct hidpad_ps3_data* device = (struct hidpad_ps3_data*)calloc(1, sizeof(struct hidpad_ps3_data));
device->connection = connection; device->connection = connection;
device->slot = slot; device->slot = slot;

View File

@ -24,7 +24,7 @@
static void* hidpad_wii_connect(struct apple_pad_connection* connection, uint32_t slot) static void* hidpad_wii_connect(struct apple_pad_connection* connection, uint32_t slot)
{ {
struct wiimote_t* device = calloc(1, sizeof(struct wiimote_t)); struct wiimote_t* device = (struct wiimote_t*)calloc(1, sizeof(struct wiimote_t));
device->connection = connection; device->connection = connection;
device->unid = slot; device->unid = slot;
@ -47,11 +47,16 @@ static int16_t hidpad_wii_get_axis(struct wiimote_t* device, unsigned axis)
{ {
switch (axis) switch (axis)
{ {
case 0: return device->exp.cc.classic.ljs.x.value * 0x7FFF; case 0:
case 1: return device->exp.cc.classic.ljs.y.value * 0x7FFF; return device->exp.cc.classic.ljs.x.value * 0x7FFF;
case 2: return device->exp.cc.classic.rjs.x.value * 0x7FFF; case 1:
case 3: return device->exp.cc.classic.rjs.y.value * 0x7FFF; return device->exp.cc.classic.ljs.y.value * 0x7FFF;
default: return 0; case 2:
return device->exp.cc.classic.rjs.x.value * 0x7FFF;
case 3:
return device->exp.cc.classic.rjs.y.value * 0x7FFF;
default:
return 0;
} }
} }

View File

@ -75,15 +75,16 @@ void wiimote_status(struct wiimote_t* wm)
wiimote_send(wm, WM_CMD_CTRL_STATUS, &buf, 1); wiimote_send(wm, WM_CMD_CTRL_STATUS, &buf, 1);
} }
void wiimote_data_report(struct wiimote_t* wm, byte type) { void wiimote_data_report(struct wiimote_t* wm, byte type)
byte buf[2] = {0x0,0x0}; {
byte buf[2] = {0x0,0x0};
if (!wm || !WIIMOTE_IS_CONNECTED(wm)) if (!wm || !WIIMOTE_IS_CONNECTED(wm))
return; return;
buf[1] = type; buf[1] = type;
//CUIDADO es un &buf? //CUIDADO es un &buf?
wiimote_send(wm, WM_CMD_REPORT_TYPE, buf, 2); wiimote_send(wm, WM_CMD_REPORT_TYPE, buf, 2);
} }
@ -95,18 +96,19 @@ void wiimote_data_report(struct wiimote_t* wm, byte type) {
* *
* \a leds is a bitwise or of WIIMOTE_LED_1, WIIMOTE_LED_2, WIIMOTE_LED_3, or WIIMOTE_LED_4. * \a leds is a bitwise or of WIIMOTE_LED_1, WIIMOTE_LED_2, WIIMOTE_LED_3, or WIIMOTE_LED_4.
*/ */
void wiimote_set_leds(struct wiimote_t* wm, int leds) { void wiimote_set_leds(struct wiimote_t* wm, int leds)
byte buf; {
byte buf;
if (!wm || !WIIMOTE_IS_CONNECTED(wm)) if (!wm || !WIIMOTE_IS_CONNECTED(wm))
return; return;
/* remove the lower 4 bits because they control rumble */ /* remove the lower 4 bits because they control rumble */
wm->leds = (leds & 0xF0); wm->leds = (leds & 0xF0);
buf = wm->leds; buf = wm->leds;
wiimote_send(wm, WM_CMD_LED, &buf, 1); wiimote_send(wm, WM_CMD_LED, &buf, 1);
} }
/** /**
@ -115,14 +117,15 @@ void wiimote_set_leds(struct wiimote_t* wm, int leds) {
* @param wm Pointer to a wiimote_t structure. * @param wm Pointer to a wiimote_t structure.
* @param msg The message specified in the event packet. * @param msg The message specified in the event packet.
*/ */
void wiimote_pressed_buttons(struct wiimote_t* wm, byte* msg) { void wiimote_pressed_buttons(struct wiimote_t* wm, byte* msg)
short now; {
short now;
/* convert to big endian */ /* convert to big endian */
now = BIG_ENDIAN_SHORT(*(short*)msg) & WIIMOTE_BUTTON_ALL; now = BIG_ENDIAN_SHORT(*(short*)msg) & WIIMOTE_BUTTON_ALL;
/* buttons pressed now */ /* buttons pressed now */
wm->btns = now; wm->btns = now;
} }
/** /**
@ -131,14 +134,16 @@ void wiimote_pressed_buttons(struct wiimote_t* wm, byte* msg) {
* @param wm A pointer to a wiimote_t structure. * @param wm A pointer to a wiimote_t structure.
* @param msg The message specified in the event packet for the expansion. * @param msg The message specified in the event packet for the expansion.
*/ */
void wiimote_handle_expansion(struct wiimote_t* wm, byte* msg) { void wiimote_handle_expansion(struct wiimote_t* wm, byte* msg)
switch (wm->exp.type) { {
case EXP_CLASSIC: switch (wm->exp.type)
classic_ctrl_event(&wm->exp.cc.classic, msg); {
break; case EXP_CLASSIC:
default: classic_ctrl_event(&wm->exp.cc.classic, msg);
break; break;
} default:
break;
}
} }
/** /**
@ -154,16 +159,17 @@ void wiimote_handle_expansion(struct wiimote_t* wm, byte* msg) {
* The handshake will be concluded when the wiimote responds * The handshake will be concluded when the wiimote responds
* with this data. * with this data.
*/ */
int wiimote_handshake(struct wiimote_t* wm, byte event, byte* data, unsigned short len) { int wiimote_handshake(struct wiimote_t* wm, byte event, byte* data, unsigned short len)
{
if (!wm) return 0; if (!wm) return 0;
while(1) while(1)
{ {
#ifdef WIIMOTE_DBG #ifdef WIIMOTE_DBG
printf("Handshake %d\n",wm->handshake_state); printf("Handshake %d\n",wm->handshake_state);
#endif #endif
switch (wm->handshake_state) switch (wm->handshake_state)
{ {
case 0://no ha habido nunca handshake, debemos forzar un mensaje de staus para ver que pasa. case 0://no ha habido nunca handshake, debemos forzar un mensaje de staus para ver que pasa.
{ {
@ -230,7 +236,9 @@ int wiimote_handshake(struct wiimote_t* wm, byte event, byte* data, unsigned sh
wm->handshake_state = 4; wm->handshake_state = 4;
return 0; return 0;
} else if (!attachment && WIIMOTE_IS_SET(wm, WIIMOTE_STATE_EXP)) { }
else if (!attachment && WIIMOTE_IS_SET(wm, WIIMOTE_STATE_EXP))
{
/* attachment removed */ /* attachment removed */
WIIMOTE_DISABLE_STATE(wm, WIIMOTE_STATE_EXP); WIIMOTE_DISABLE_STATE(wm, WIIMOTE_STATE_EXP);
wm->exp.type = EXP_NONE; wm->exp.type = EXP_NONE;
@ -327,7 +335,7 @@ int wiimote_handshake(struct wiimote_t* wm, byte event, byte* data, unsigned sh
break; break;
} }
} }
} }
} }
@ -376,28 +384,29 @@ int wiimote_send(struct wiimote_t* wm, byte report_type, byte* msg, int len)
* to a pending list and be sent out when the previous * to a pending list and be sent out when the previous
* finishes. * finishes.
*/ */
int wiimote_read_data(struct wiimote_t* wm, unsigned int addr, unsigned short len) { int wiimote_read_data(struct wiimote_t* wm, unsigned int addr, unsigned short len)
//No puden ser mas de 16 lo leido o vendra en trozos! {
//No puden ser mas de 16 lo leido o vendra en trozos!
if (!wm || !WIIMOTE_IS_CONNECTED(wm)) if (!wm || !WIIMOTE_IS_CONNECTED(wm))
return 0; return 0;
if (!len /*|| len > 16*/) if (!len /*|| len > 16*/)
return 0; return 0;
byte buf[6]; byte buf[6];
/* the offset is in big endian */ /* the offset is in big endian */
*(int*)(buf) = BIG_ENDIAN_LONG(addr); *(int*)(buf) = BIG_ENDIAN_LONG(addr);
/* the length is in big endian */ /* the length is in big endian */
*(short*)(buf + 4) = BIG_ENDIAN_SHORT(len); *(short*)(buf + 4) = BIG_ENDIAN_SHORT(len);
#ifdef WIIMOTE_DBG #ifdef WIIMOTE_DBG
printf("Request read at address: 0x%x length: %i", addr, len); printf("Request read at address: 0x%x length: %i", addr, len);
#endif #endif
wiimote_send(wm, WM_CMD_READ_DATA, buf, 6); wiimote_send(wm, WM_CMD_READ_DATA, buf, 6);
return 1; return 1;
} }
/** /**
@ -408,16 +417,17 @@ int wiimote_read_data(struct wiimote_t* wm, unsigned int addr, unsigned short le
* @param data The data to be written to the memory location. * @param data The data to be written to the memory location.
* @param len The length of the block to be written. * @param len The length of the block to be written.
*/ */
int wiimote_write_data(struct wiimote_t* wm, unsigned int addr, byte* data, byte len) { int wiimote_write_data(struct wiimote_t* wm, unsigned int addr, byte* data, byte len)
byte buf[21] = {0}; /* the payload is always 23 */ {
byte buf[21] = {0}; /* the payload is always 23 */
if (!wm || !WIIMOTE_IS_CONNECTED(wm)) if (!wm || !WIIMOTE_IS_CONNECTED(wm))
return 0; return 0;
if (!data || !len) if (!data || !len)
return 0; return 0;
#ifdef WIIMOTE_DBG #ifdef WIIMOTE_DBG
printf("Writing %i bytes to memory location 0x%x...\n", len, addr); printf("Writing %i bytes to memory location 0x%x...\n", len, addr);
int i = 0; int i = 0;
printf("Write data is: "); printf("Write data is: ");
@ -426,17 +436,17 @@ int wiimote_write_data(struct wiimote_t* wm, unsigned int addr, byte* data, byte
printf("\n"); printf("\n");
#endif #endif
/* the offset is in big endian */ /* the offset is in big endian */
*(int*)(buf) = BIG_ENDIAN_LONG(addr); *(int*)(buf) = BIG_ENDIAN_LONG(addr);
/* length */ /* length */
*(byte*)(buf + 4) = len; *(byte*)(buf + 4) = len;
/* data */ /* data */
memcpy(buf + 5, data, len); memcpy(buf + 5, data, len);
wiimote_send(wm, WM_CMD_WRITE_DATA, buf, 21); wiimote_send(wm, WM_CMD_WRITE_DATA, buf, 21);
return 1; return 1;
} }