First review note: traditional older style C code, but looks professional. Some encoding issues in the comments...
French comments I believe.
Visual Studio Code is handling the code fairly well.
Qt Creator IDE use will need effort.
References to Keil and Borland.
I recommend:
covemountainsoftware.com/2016/08/31/pre…
ansic: 55330 (56.71%)
cpp: 41641 (42.68%)
python: 520 (0.53%)
asm: 72 (0.07%)
Total Physical Source Lines of Code (SLOC) = 97,563
Just ran cppcheck on the code base.
Minimal concerns, but a few critical
Kinda like this:
if ((Table[index].id == NO) || (index >= MAX ))
But some of those complex functions are where we might expect: code calculating "flow leak", "exhalation", "inspiration", "O2", etc.
Maybe @jwgrenning is up to the challenge! :-)
val = (2932 * (SWORD32)AD_Digit.Volt24) / 10000;
val = val; //cppcheck calls this out.
I see several places with that pattern, but typically in the context of #ifdefs and avoiding unused var warn. Not sure why they did this in this case? timing? mistake?
If I'm reading correctly, everything is statically allocated. This is normal, especially in FW that likely went through a certification/reliability process.