A little warning cleanup
This commit is contained in:
@@ -157,8 +157,8 @@ void classic_ctrl_event(struct classic_ctrl_t* cc, byte* msg) {
|
|||||||
rx = ((msg[0] & 0xC0) >> 3) | ((msg[1] & 0xC0) >> 5) | ((msg[2] & 0x80) >> 7);
|
rx = ((msg[0] & 0xC0) >> 3) | ((msg[1] & 0xC0) >> 5) | ((msg[2] & 0x80) >> 7);
|
||||||
ry = (msg[2] & 0x1F);
|
ry = (msg[2] & 0x1F);
|
||||||
|
|
||||||
calc_joystick_state(&cc->ljs, lx, ly);
|
calc_joystick_state(&cc->ljs, (float)lx, (float)ly);
|
||||||
calc_joystick_state(&cc->rjs, rx, ry);
|
calc_joystick_state(&cc->rjs, (float)rx, (float)ry);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
20
src/ir.c
20
src/ir.c
@@ -459,10 +459,10 @@ static void interpret_ir_data(struct wiimote_t* wm) {
|
|||||||
|
|
||||||
if (dot[i].order == 1)
|
if (dot[i].order == 1)
|
||||||
/* visible is the left dot - estimate where the right is */
|
/* visible is the left dot - estimate where the right is */
|
||||||
ox = dot[i].x + wm->ir.distance;
|
ox = (int32_t)(dot[i].x + wm->ir.distance);
|
||||||
else if (dot[i].order == 2)
|
else if (dot[i].order == 2)
|
||||||
/* visible is the right dot - estimate where the left is */
|
/* visible is the right dot - estimate where the left is */
|
||||||
ox = dot[i].x - wm->ir.distance;
|
ox = (int32_t)(dot[i].x - wm->ir.distance);
|
||||||
|
|
||||||
x = ((signed int)dot[i].x + ox) / 2;
|
x = ((signed int)dot[i].x + ox) / 2;
|
||||||
y = dot[i].y;
|
y = dot[i].y;
|
||||||
@@ -570,8 +570,8 @@ static void fix_rotated_ir_dots(struct ir_dot_t* dot, float ang) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
s = sin(DEGREE_TO_RAD(ang));
|
s = sinf(DEGREE_TO_RAD(ang));
|
||||||
c = cos(DEGREE_TO_RAD(ang));
|
c = cosf(DEGREE_TO_RAD(ang));
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* [ cos(theta) -sin(theta) ][ ir->rx ]
|
* [ cos(theta) -sin(theta) ][ ir->rx ]
|
||||||
@@ -585,8 +585,8 @@ static void fix_rotated_ir_dots(struct ir_dot_t* dot, float ang) {
|
|||||||
x = dot[i].rx - (1024/2);
|
x = dot[i].rx - (1024/2);
|
||||||
y = dot[i].ry - (768/2);
|
y = dot[i].ry - (768/2);
|
||||||
|
|
||||||
dot[i].x = (c * x) + (-s * y);
|
dot[i].x = (uint32_t)((c * x) + (-s * y));
|
||||||
dot[i].y = (s * x) + (c * y);
|
dot[i].y = (uint32_t)((s * x) + (c * y));
|
||||||
|
|
||||||
dot[i].x += (1024/2);
|
dot[i].x += (1024/2);
|
||||||
dot[i].y += (768/2);
|
dot[i].y += (768/2);
|
||||||
@@ -673,7 +673,7 @@ static float ir_distance(struct ir_dot_t* dot) {
|
|||||||
xd = dot[i2].x - dot[i1].x;
|
xd = dot[i2].x - dot[i1].x;
|
||||||
yd = dot[i2].y - dot[i1].y;
|
yd = dot[i2].y - dot[i1].y;
|
||||||
|
|
||||||
return sqrt(xd*xd + yd*yd);
|
return sqrtf(xd*xd + yd*yd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -738,8 +738,8 @@ static void ir_convert_to_vres(int* x, int* y, enum aspect_t aspect, int vx, int
|
|||||||
*x -= ((1024-xs)/2);
|
*x -= ((1024-xs)/2);
|
||||||
*y -= ((768-ys)/2);
|
*y -= ((768-ys)/2);
|
||||||
|
|
||||||
*x = (*x / (float)xs) * vx;
|
*x = (int)((*x / (float)xs) * vx);
|
||||||
*y = (*y / (float)ys) * vy;
|
*y = (int)((*y / (float)ys) * vy);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -751,7 +751,7 @@ static void ir_convert_to_vres(int* x, int* y, enum aspect_t aspect, int vx, int
|
|||||||
float calc_yaw(struct ir_t* ir) {
|
float calc_yaw(struct ir_t* ir) {
|
||||||
float x;
|
float x;
|
||||||
|
|
||||||
x = ir->ax - 512;
|
x = (float)(ir->ax - 512);
|
||||||
x = x * (ir->z / 1024.0f);
|
x = x * (ir->z / 1024.0f);
|
||||||
|
|
||||||
return RAD_TO_DEGREE( atanf(x / ir->z) );
|
return RAD_TO_DEGREE( atanf(x / ir->z) );
|
||||||
|
|||||||
@@ -261,27 +261,27 @@ static void calculate_gyro_rates(struct motion_plus_t* mp)
|
|||||||
|
|
||||||
/* We convert to degree/sec according to fast/slow mode */
|
/* We convert to degree/sec according to fast/slow mode */
|
||||||
if (mp->acc_mode & 0x04)
|
if (mp->acc_mode & 0x04)
|
||||||
tmp_roll = tmp_r / 20.0;
|
tmp_roll = (float)tmp_r / 20.0f;
|
||||||
else
|
else
|
||||||
tmp_roll = tmp_r / 4.0;
|
tmp_roll = (float)tmp_r / 4.0f;
|
||||||
|
|
||||||
if (mp->acc_mode & 0x02)
|
if (mp->acc_mode & 0x02)
|
||||||
tmp_pitch = tmp_p / 20.0;
|
tmp_pitch = (float)tmp_p / 20.0f;
|
||||||
else
|
else
|
||||||
tmp_pitch = tmp_p / 4.0;
|
tmp_pitch = (float)tmp_p / 4.0f;
|
||||||
|
|
||||||
if (mp->acc_mode & 0x01)
|
if (mp->acc_mode & 0x01)
|
||||||
tmp_yaw = tmp_y / 20.0;
|
tmp_yaw = (float)tmp_y / 20.0f;
|
||||||
else
|
else
|
||||||
tmp_yaw = tmp_y / 4.0;
|
tmp_yaw = (float)tmp_y / 4.0f;
|
||||||
|
|
||||||
/* Simple filtering */
|
/* Simple filtering */
|
||||||
if (fabs(tmp_roll) < 0.5)
|
if (fabs(tmp_roll) < 0.5f)
|
||||||
tmp_roll = 0.0;
|
tmp_roll = 0.0f;
|
||||||
if (fabs(tmp_pitch) < 0.5)
|
if (fabs(tmp_pitch) < 0.5f)
|
||||||
tmp_pitch = 0.0;
|
tmp_pitch = 0.0f;
|
||||||
if (fabs(tmp_yaw) < 0.5)
|
if (fabs(tmp_yaw) < 0.5f)
|
||||||
tmp_yaw = 0.0;
|
tmp_yaw = 0.0f;
|
||||||
|
|
||||||
mp->angle_rate_gyro.roll = tmp_roll;
|
mp->angle_rate_gyro.roll = tmp_roll;
|
||||||
mp->angle_rate_gyro.pitch = tmp_pitch;
|
mp->angle_rate_gyro.pitch = tmp_pitch;
|
||||||
|
|||||||
9
src/os.h
9
src/os.h
@@ -40,13 +40,12 @@
|
|||||||
#define OS_H_INCLUDED
|
#define OS_H_INCLUDED
|
||||||
|
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
|
#include <float.h>
|
||||||
/* windows with visual c */
|
/* windows with visual c */
|
||||||
#define isnan(x) _isnan(x)
|
#define isnan(x) (_isnan(x))
|
||||||
#define isinf(x) !_finite(x)
|
#define isinf(x) (!_finite(x))
|
||||||
/* disable warnings I don't care about */
|
/* disable warnings I don't care about */
|
||||||
#pragma warning(disable:4244) /* possible loss of data conversion */
|
/*#pragma warning(disable:4273) */ /* inconsistent dll linkage */
|
||||||
#pragma warning(disable:4273) /* inconsistent dll linkage */
|
|
||||||
#pragma warning(disable:4217)
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* OS_H_INCLUDED */
|
#endif /* OS_H_INCLUDED */
|
||||||
|
|||||||
Reference in New Issue
Block a user