From 8bc0d90b007fdcc994b8a2e4a58ed9d35a6d29f2 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 2 Apr 2017 09:55:38 -0500 Subject: [PATCH 1/2] Init bed_level_virt_interpolate on EEPROM load --- Marlin/Marlin_main.cpp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index 8eacd70565..da85f9337a 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -2615,6 +2615,8 @@ static void clean_up_after_endstop_or_probe_move() { } void bed_level_virt_interpolate() { + bilinear_grid_spacing_virt[X_AXIS] = bilinear_grid_spacing[X_AXIS] / (BILINEAR_SUBDIVISIONS); + bilinear_grid_spacing_virt[Y_AXIS] = bilinear_grid_spacing[Y_AXIS] / (BILINEAR_SUBDIVISIONS); for (uint8_t y = 0; y < GRID_MAX_POINTS_Y; y++) for (uint8_t x = 0; x < GRID_MAX_POINTS_X; x++) for (uint8_t ty = 0; ty < BILINEAR_SUBDIVISIONS; ty++) @@ -4268,11 +4270,6 @@ inline void gcode_G28() { bilinear_start[X_AXIS] = RAW_X_POSITION(left_probe_bed_position); bilinear_start[Y_AXIS] = RAW_Y_POSITION(front_probe_bed_position); - #if ENABLED(ABL_BILINEAR_SUBDIVISION) - bilinear_grid_spacing_virt[X_AXIS] = xGridSpacing / (BILINEAR_SUBDIVISIONS); - bilinear_grid_spacing_virt[Y_AXIS] = yGridSpacing / (BILINEAR_SUBDIVISIONS); - #endif - // Can't re-enable (on error) until the new grid is written abl_should_enable = false; } From 314a02e2d52aa20bf5ec843b47a27f294c1360f8 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 9 Apr 2017 07:58:47 -0500 Subject: [PATCH 2/2] Toggle with XOR --- Marlin/Marlin_main.cpp | 4 ++-- Marlin/ubl_G29.cpp | 2 +- Marlin/ultralcd.cpp | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index da85f9337a..73e8686dc7 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -4475,7 +4475,7 @@ inline void gcode_G28() { inInc = -1; } - zig = !zig; // zag + zig ^= true; // zag // Inner loop is Y with PROBE_Y_FIRST enabled for (int8_t PR_INNER_VAR = inStart; PR_INNER_VAR != inStop; PR_INNER_VAR += inInc) { @@ -5799,7 +5799,7 @@ inline void gcode_M42() { #if ENABLED(AUTO_BED_LEVELING_UBL) && ENABLED(UBL_G26_MESH_EDITING) inline void gcode_M49() { - ubl.g26_debug_flag = !ubl.g26_debug_flag; + ubl.g26_debug_flag ^= true; SERIAL_PROTOCOLPGM("UBL Debug Flag turned "); serialprintPGM(ubl.g26_debug_flag ? PSTR("on.") : PSTR("off.")); } diff --git a/Marlin/ubl_G29.cpp b/Marlin/ubl_G29.cpp index 5e999a58d8..c0b54fc1b2 100644 --- a/Marlin/ubl_G29.cpp +++ b/Marlin/ubl_G29.cpp @@ -1551,7 +1551,7 @@ inInc = -1; } - zig = !zig; // zag + zig ^= true; // zag // Inner loop is Y with PROBE_Y_FIRST enabled for (PR_INNER_VAR = inStart; PR_INNER_VAR != inStop; PR_INNER_VAR += inInc) { diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp index e9c8700b94..0446999b62 100755 --- a/Marlin/ultralcd.cpp +++ b/Marlin/ultralcd.cpp @@ -688,7 +688,7 @@ void kill_screen(const char* lcd_msg) { extern void update_case_light(); void toggle_case_light() { - case_light_on = !case_light_on; + case_light_on ^= true; lcdDrawUpdate = LCDVIEW_CALL_REDRAW_NEXT; update_case_light(); } @@ -3196,7 +3196,7 @@ void kill_screen(const char* lcd_msg) { #endif //SDSUPPORT - void menu_action_setting_edit_bool(const char* pstr, bool* ptr) {UNUSED(pstr); *ptr = !(*ptr); lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; } + void menu_action_setting_edit_bool(const char* pstr, bool* ptr) {UNUSED(pstr); *ptr ^= true; lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; } void menu_action_setting_edit_callback_bool(const char* pstr, bool* ptr, screenFunc_t callback) { menu_action_setting_edit_bool(pstr, ptr); (*callback)();