From 107d95b81a1f1586c4276bd4d40918c3387ac483 Mon Sep 17 00:00:00 2001 From: Sem van der Hoeven Date: Mon, 19 Oct 2020 13:59:47 +0200 Subject: [PATCH 1/2] fixed overflowexception --- ProftaakRH/BikeSimulator.cs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/ProftaakRH/BikeSimulator.cs b/ProftaakRH/BikeSimulator.cs index d1c3ae7..1f8e7c0 100644 --- a/ProftaakRH/BikeSimulator.cs +++ b/ProftaakRH/BikeSimulator.cs @@ -93,17 +93,23 @@ namespace Hardware.Simulators //Generate an ANT message for page 0x10 private byte[] GenerateBike0x10() { - //SOMEONE FIX THIS!!!!!!!!! + try { - byte[] bikeByte = { 0x10, Convert.ToByte(equipmentType), Convert.ToByte(elapsedTime * 4 % 64), Convert.ToByte(distanceTraveled), speedArray[0], speedArray[1], Convert.ToByte(BPM), 0xFF }; + byte[] bikeByte = { 0x10, check(equipmentType), check(elapsedTime * 4 % 64), check((int)Math.Round(distanceTraveled)), speedArray[0], speedArray[1], check(BPM), 0xFF }; return bikeByte; } catch (OverflowException e) { Debug.WriteLine(e); - return GenerateBike0x10(); } + byte[] res = { 0x10,0x00, 0x00, 0x00, 0x00, 0x00, 0x00,0xFF}; + return res; + } + + private byte check(int value) + { + return value > 255 ? Convert.ToByte(0) : Convert.ToByte(value); } //Generate an ANT message for BPM From f934dee2d0f49148c99fecd0328b6e5069d054b8 Mon Sep 17 00:00:00 2001 From: Sem van der Hoeven Date: Mon, 19 Oct 2020 14:01:39 +0200 Subject: [PATCH 2/2] made overflow return 255 instead of 0 --- ProftaakRH/BikeSimulator.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ProftaakRH/BikeSimulator.cs b/ProftaakRH/BikeSimulator.cs index 1f8e7c0..e0d0ccd 100644 --- a/ProftaakRH/BikeSimulator.cs +++ b/ProftaakRH/BikeSimulator.cs @@ -102,14 +102,14 @@ namespace Hardware.Simulators catch (OverflowException e) { Debug.WriteLine(e); + byte[] res = { 0x10,0x00, 0x00, 0x00, 0x00, 0x00, 0x00,0xFF}; + return res; } - byte[] res = { 0x10,0x00, 0x00, 0x00, 0x00, 0x00, 0x00,0xFF}; - return res; } private byte check(int value) { - return value > 255 ? Convert.ToByte(0) : Convert.ToByte(value); + return value > 255 ? Convert.ToByte(255) : Convert.ToByte(value); } //Generate an ANT message for BPM