mirror of
https://github.com/raphnet/gc_n64_usb-v3
synced 2024-12-21 23:08:53 -05:00
ifdef unused rawdata fields to save memory
Save 32 bytes.
This commit is contained in:
parent
083c915c34
commit
2eaafb7786
@ -92,7 +92,10 @@ void gc_decodeAnswer(unsigned char chn, unsigned char data[8])
|
|||||||
cy = data[5];
|
cy = data[5];
|
||||||
last_built_report[chn].gc.lt = data[6];
|
last_built_report[chn].gc.lt = data[6];
|
||||||
last_built_report[chn].gc.rt = data[7];
|
last_built_report[chn].gc.rt = data[7];
|
||||||
|
|
||||||
|
#ifdef PAD_DATA_HAS_RAW
|
||||||
memcpy(last_built_report[chn].gc.raw_data, data, 8);
|
memcpy(last_built_report[chn].gc.raw_data, data, 8);
|
||||||
|
#endif
|
||||||
|
|
||||||
if (origins_set[chn]) {
|
if (origins_set[chn]) {
|
||||||
last_built_report[chn].gc.x = ((int)x-(int)orig_x[chn]);
|
last_built_report[chn].gc.x = ((int)x-(int)orig_x[chn]);
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
#ifndef _gamepads_h__
|
#ifndef _gamepads_h__
|
||||||
#define _gamepads_h__
|
#define _gamepads_h__
|
||||||
|
|
||||||
|
#undef PAD_DATA_HAS_RAW
|
||||||
|
|
||||||
#define PAD_TYPE_NONE 0
|
#define PAD_TYPE_NONE 0
|
||||||
#define PAD_TYPE_N64 4
|
#define PAD_TYPE_N64 4
|
||||||
#define PAD_TYPE_GAMECUBE 5
|
#define PAD_TYPE_GAMECUBE 5
|
||||||
@ -12,7 +14,9 @@ typedef struct _n64_pad_data {
|
|||||||
unsigned char pad_type; // PAD_TYPE_N64
|
unsigned char pad_type; // PAD_TYPE_N64
|
||||||
char x,y;
|
char x,y;
|
||||||
unsigned short buttons;
|
unsigned short buttons;
|
||||||
|
#ifdef PAD_DATA_HAS_RAW
|
||||||
unsigned char raw_data[N64_RAW_SIZE];
|
unsigned char raw_data[N64_RAW_SIZE];
|
||||||
|
#endif
|
||||||
} n64_pad_data;
|
} n64_pad_data;
|
||||||
|
|
||||||
#define N64_BTN_A 0x8000
|
#define N64_BTN_A 0x8000
|
||||||
@ -38,7 +42,9 @@ typedef struct _gc_pad_data {
|
|||||||
char x,y,cx,cy;
|
char x,y,cx,cy;
|
||||||
unsigned char lt,rt;
|
unsigned char lt,rt;
|
||||||
unsigned short buttons;
|
unsigned short buttons;
|
||||||
|
#ifdef PAD_DATA_HAS_RAW
|
||||||
unsigned char raw_data[GC_RAW_SIZE];
|
unsigned char raw_data[GC_RAW_SIZE];
|
||||||
|
#endif
|
||||||
} gc_pad_data;
|
} gc_pad_data;
|
||||||
|
|
||||||
#define GC_BTN_A 0x0001
|
#define GC_BTN_A 0x0001
|
||||||
|
2
n64.c
2
n64.c
@ -218,11 +218,13 @@ static char n64Update(unsigned char chn)
|
|||||||
last_built_report[chn].n64.x = x;
|
last_built_report[chn].n64.x = x;
|
||||||
last_built_report[chn].n64.y = y;
|
last_built_report[chn].n64.y = y;
|
||||||
|
|
||||||
|
#ifdef PAD_DATA_HAS_RAW
|
||||||
/* Copy all the data as-is for the raw field */
|
/* Copy all the data as-is for the raw field */
|
||||||
last_built_report[chn].n64.raw_data[0] = btns1;
|
last_built_report[chn].n64.raw_data[0] = btns1;
|
||||||
last_built_report[chn].n64.raw_data[1] = btns2;
|
last_built_report[chn].n64.raw_data[1] = btns2;
|
||||||
last_built_report[chn].n64.raw_data[2] = x;
|
last_built_report[chn].n64.raw_data[2] = x;
|
||||||
last_built_report[chn].n64.raw_data[3] = y;
|
last_built_report[chn].n64.raw_data[3] = y;
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Some cheap non-official controllers
|
/* Some cheap non-official controllers
|
||||||
* use the full 8 bit range instead of the
|
* use the full 8 bit range instead of the
|
||||||
|
Loading…
Reference in New Issue
Block a user