Skip to content

Commit ef51247

Browse files
committed
Using effect gain for all effects (Forza fix)
1 parent 3725c29 commit ef51247

1 file changed

Lines changed: 4 additions & 6 deletions

File tree

Firmware/FFBoard/Src/EffectsCalculator.cpp

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -178,17 +178,15 @@ int32_t EffectsCalculator::calcNonConditionEffectForce(FFB_Effect *effect) {
178178

179179
case FFB_EFFECT_CONSTANT:
180180
{ // Constant force is just the force
181-
force_vector = ((int32_t)magnitude * (int32_t)(1 + effect->gain)) >> 8;
182-
181+
force_vector = (int32_t)magnitude;
183182
break;
184183
}
185184

186185
case FFB_EFFECT_RAMP:
187186
{
188187
uint32_t elapsed_time = HAL_GetTick() - effect->startTime;
189188
int32_t duration = effect->duration;
190-
float force = (int32_t)effect->startLevel + ((int32_t)elapsed_time * (effect->endLevel - effect->startLevel)) / duration;
191-
force_vector = (int32_t)(force * (1 + effect->gain)) >> 8;
189+
force_vector = (int32_t)effect->startLevel + ((int32_t)elapsed_time * (effect->endLevel - effect->startLevel)) / duration;
192190
break;
193191
}
194192

@@ -274,7 +272,7 @@ int32_t EffectsCalculator::calcNonConditionEffectForce(FFB_Effect *effect) {
274272
break;
275273
}
276274

277-
return force_vector;
275+
return (force_vector * effect->gain) / 255;
278276
}
279277

280278

@@ -433,7 +431,7 @@ int32_t EffectsCalculator::calcComponentForce(FFB_Effect *effect, int32_t forceV
433431
// Unsupported effect
434432
break;
435433
}
436-
return (result_torque * (global_gain+1)) >> 8; // Apply global gain
434+
return (result_torque * global_gain) / 255; // Apply global gain
437435
}
438436

439437
/**

0 commit comments

Comments
 (0)