From 3991d6c46a8b25bae95c0d84072e2a26f2606699 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=A1clav=20=27ax=27=20H=C5=AFla?= Date: Sat, 17 Sep 2011 19:50:06 +0200 Subject: simplified string-to-number conversions --- Sprinter/Sprinter.pde | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'Sprinter/Sprinter.pde') diff --git a/Sprinter/Sprinter.pde b/Sprinter/Sprinter.pde index a941531..fdd3920 100644 --- a/Sprinter/Sprinter.pde +++ b/Sprinter/Sprinter.pde @@ -392,7 +392,7 @@ inline void get_command() if(strstr(cmdbuffer[bufindw], "N") != NULL) { strchr_pointer = strchr(cmdbuffer[bufindw], 'N'); - gcode_N = (strtol(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL, 10)); + gcode_N = atoi(strchr_pointer+1); if(gcode_N != gcode_LastN+1 && (strstr(cmdbuffer[bufindw], "M110") == NULL) ) { Serial.print("Serial Error: Line Number is not Last Line Number+1, Last Line:"); Serial.println(gcode_LastN); @@ -409,7 +409,7 @@ inline void get_command() while(cmdbuffer[bufindw][count] != '*') checksum = checksum^cmdbuffer[bufindw][count++]; strchr_pointer = strchr(cmdbuffer[bufindw], '*'); - if( (int)(strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)) != checksum) { + if( atoi(strchr_pointer+1) != checksum) { Serial.print("Error: checksum mismatch, Last Line:"); Serial.println(gcode_LastN); FlushSerialRequestResend(); @@ -442,7 +442,7 @@ inline void get_command() } if((strstr(cmdbuffer[bufindw], "G") != NULL)){ strchr_pointer = strchr(cmdbuffer[bufindw], 'G'); - switch((int)((strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)))){ + switch(atoi(strchr_pointer+1)){ case 0: case 1: #ifdef SDSUPPORT @@ -504,8 +504,8 @@ if(!sdmode || serial_count!=0){ } -inline float code_value() { return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); } -inline long code_value_long() { return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); } +inline float code_value() { return strtod(strchr_pointer, NULL); } +inline long code_value_long() { return atol(strchr_pointer); } inline bool code_seen(char code_string[]) { return (strstr(cmdbuffer[bufindr], code_string) != NULL); } //Return True if the string was found inline bool code_seen(char code) -- cgit v1.2.1 From 3d4980b4f2ebf4ddf165b960dd6226758a30d696 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=A1clav=20=27ax=27=20H=C5=AFla?= Date: Sat, 17 Sep 2011 20:14:20 +0200 Subject: line numbers ale long, not int --- Sprinter/Sprinter.pde | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Sprinter/Sprinter.pde') diff --git a/Sprinter/Sprinter.pde b/Sprinter/Sprinter.pde index fdd3920..31ef14c 100644 --- a/Sprinter/Sprinter.pde +++ b/Sprinter/Sprinter.pde @@ -392,7 +392,7 @@ inline void get_command() if(strstr(cmdbuffer[bufindw], "N") != NULL) { strchr_pointer = strchr(cmdbuffer[bufindw], 'N'); - gcode_N = atoi(strchr_pointer+1); + gcode_N = atol(strchr_pointer+1); if(gcode_N != gcode_LastN+1 && (strstr(cmdbuffer[bufindw], "M110") == NULL) ) { Serial.print("Serial Error: Line Number is not Last Line Number+1, Last Line:"); Serial.println(gcode_LastN); -- cgit v1.2.1